SQL Server添加序列以选择语句

时间:2018-10-10 14:25:11

标签: sql-server loops select

我有一条Select语句可提取客户信息,即CustomerIDFirstNameLastName等。

我希望能够将销售人员分配给按销售额排名的前100名最佳客户。

我设置了select语句以吸引最佳的100个客户,我如何在该语句中添加一列以这种方式对客户进行编号:

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

一遍又一遍地重复所有记录的销售人员ID。

1 个答案:

答案 0 :(得分:1)

您可以使用row_number()和模数算法:

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

. . .用于指定“最佳”的排序列。这两个order by子句应该相同。

请注意,某些数据库使用mod()而不是%