循环分配
我有一个客户表,希望以循环方式为每个客户分配一名销售人员。
Customers
--CustomerID
--FName
--SalespersonID
Salesperson
--SalespersonID
--FName
所以,如果我有 15 个客户和 5 个销售人员,我希望最终结果看起来像这样:
CustomerID -- FName -- SalespersonID
1 -- A -- 1
2 -- B -- 2
3 -- C -- 3
4 -- D -- 4
5 -- E -- 5
6 -- F -- 1
7 -- G -- 2
8 -- H -- 3
9 -- I -- 4
10 -- J -- 5
11 -- K -- 1
12 -- L -- 2
13 -- M -- 3
14 -- N -- 4
15 -- 0 -- 5
等等...
我已经对此进行了一些尝试,并且正在尝试编写一些 SQL 来更新我的客户表具有适当的 SalespersonID,但在使其正常工作时遇到一些困难。
任何想法都将不胜感激!
I have a Customers table and would like to assign a Salesperson to each customer in a round-robin fashion.
Customers
--CustomerID
--FName
--SalespersonID
Salesperson
--SalespersonID
--FName
So, if I have 15 customers and 5 salespeople, I would like the end result to look something like this:
CustomerID -- FName -- SalespersonID
1 -- A -- 1
2 -- B -- 2
3 -- C -- 3
4 -- D -- 4
5 -- E -- 5
6 -- F -- 1
7 -- G -- 2
8 -- H -- 3
9 -- I -- 4
10 -- J -- 5
11 -- K -- 1
12 -- L -- 2
13 -- M -- 3
14 -- N -- 4
15 -- 0 -- 5
etc...
I've been playing around with this for a bit and am trying to write some SQL to update my Customers table with the appropriate SalespersonID, but am having some trouble getting it to work.
Any ideas are greatly appreciated!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
在 SQL Server 中:
In
SQL Server
:有什么具体平台吗?
在 SQL Server 2005 及更高版本中,您可以使用 ROW_NUMBER (OVER) 分配行号,然后使用客户的 ROW_NUMBER 对销售人员的数量取模来确定销售人员 ROW_NUMBER。
Any particular platform?
In SQL Server 2005 and up, you can use ROW_NUMBER (OVER) to assign row numbers and then use your ROW_NUMBER from the customers modulo the number of salespeople to determine the salesperson ROW_NUMBER.