Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Составление SQL-запросов > DENSE_RANK


Автор: lankin 29.7.2008, 13:46
Как оно работает и что указывать в Partition by и в Order By????

Вот примерный запрос :

Код

SELECT BlankType.TypeName, Blanks.Seria, Blanks.Number,
DENSE_RANK() OVER (PARTITION BY  ORDER BY ) as DENSE_RANK
FROM BlankHistory INNER JOIN Blanks ON BlankHistory.ID_Blank = Blanks.ID INNER JOIN BlankType ON Blanks.ID_Type = BlankType.ID


Автор: Akina 29.7.2008, 13:58
http://msdn.microsoft.com/en-us/library/ms173825.aspx
См. пример.

Автор: lankin 29.7.2008, 15:00
Собссно это я в мсдн и прочитал. Только можно по-русски просто объяснить что ставить в партишн и в ордер?

В результате запроса получается вот что:

Имя     Фамилия   Номер   Ранк
Вася    Петров     45         1
Вася    Пупкин     93         1
Федя   Иванов     47         1

А мне надо чтобы по имени они принимали разные ранки.

Автор: Akina 29.7.2008, 15:11
Тогда см. http://msdn.microsoft.com/en-us/library/ms189798.aspx

Автор: lankin 29.7.2008, 15:33
Всё, помогли разобраться. Partition By не нужно использовать. Просто Order By Имя.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)