SQL Server Добавление последовательности для выбора оператора - PullRequest
0 голосов
/ 10 октября 2018

У меня есть оператор Select, который извлекает информацию о клиентах, например: CustomerID, FirstName, LastName и т. Д.

Я хочу назначить менеджера по продажам лучшим 100 клиентам.ранжированный по продажам.

У меня есть оператор выбора, настроенный на выборку из 100 лучших клиентов. Как бы добавить столбец к отчету, который нумерует клиентов таким образом:

SalesID 
1, 2, 3, 4, 1, 2, 3, 4...

Где мой торговый персонал повторяется снова и снова для всех записей.

1 Ответ

0 голосов
/ 10 октября 2018

Вы можете использовать row_number() и модуль арифметики:

select t.*,
       1 + (row_number() over (order by . . . ) % 4)
from t
order by . . .

. . . предназначен для столбцов порядка, в которых указано «лучшее».Это должно быть одинаковым для обоих предложений order by.

Обратите внимание, что некоторые базы данных используют mod() вместо %.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...