Номер строки TSQL, разделенный по ссылке и дате - PullRequest
0 голосов
/ 17 октября 2019

Используя одну таблицу с примером столбца со ссылкой и датой, приведенным ниже, как я могу получить результат ниже, чтобы разделить номер строки. Одна и та же ссылка в тот же день должна отображаться с тем же номером строки.

пример ниже;

MAINFRAJOB  SyncDate    Row Number
7861    02/10/2019  1
7861    02/10/2019  1
7861    03/10/2019  2
1045679 25/09/2019  1
10233649    03/10/2019  1
10233652    04/10/2019  1
10233652    04/10/2019  1
10233652    06/10/2019  2
123456789   02/10/2019  1
123456789   02/10/2019  1
123456789   03/10/2019  2
123456789   04/10/2019  3

Я пробовал это, но это не дает правильных результатов;

ROW_NUMBER()over(partition by cast(ard.SyncDate as date), ard.actionref order by cast(ard.SyncDate as date) desc) AS 'RowNo'

Спасибо за любые рекомендации.

Ответы [ 2 ]

0 голосов
/ 17 октября 2019

Я думаю, что вы действительно ищете Dense_Rank(), как упомянул BarneyL, но вы также хотите разделить на MAINFRAJOB

Пример

Select *
      ,Row_Number = DENSE_RANK() over (Partition By [MAINFRAJOB] Order by [SyncDate])
 From YourTable

Возвращает

enter image description here

0 голосов
/ 17 октября 2019

Вместо этого попробуйте DENSE_RANK, вам также нужно удалить дату из раздела, иначе она сбрасывается в 1 при каждом изменении даты:

DENSE_RANK()over(partition by cast(ard.SyncDate as date), ard.actionref order by cast(ard.SyncDate as date) desc) AS 'RowNo'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...