SQL语句 如何把表中X的客户随机平均分配给A、B、C三个人!急!
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL语句 如何把表中X的客户随机平均分配给A、B、C三个人!急!相关的知识,希望对你有一定的参考价值。
使用order by newid() 随即排序 然后用top 1/3客户数量取A的客户然后在剩下2/3的记录中 再用newid()随机排序 然后取1/2的客户给B
剩下的为C的客户追问
你有QQ吗?方便加我吗1030707866
参考技术A 使用order by newid() 随即排序 然后用top 1/3客户数量取A的客户然后在剩下2/3的记录中 再用newid()随机排序 然后取1/2的客户给B
剩下的为C的客户
SQL Server 2005
用ntile函数分组
select *,
case ntile(3) over(order by newid()) when 1 then 'A' when 2 then 'B' when 3 then 'C' end as new_field
from tablename
where customer = 'X' 参考技术B 取出来:
一.获取表ID:SELECT object_id('a')
二.获取表a中的字段:SELECT [name] FROM syscolumns WHERE id=object_id('a')
三.用你上面从b表中读取出来的字段看看是否在第二步中读取出来的a表中的字段中,这样就取出来了b表中字段在a表中的字段了:
SELECT [name] FROM syscolumns WHERE id=object_id('a') AND name IN (select zdm from b where node_id=11) 参考技术C SQL Server 2005
用ntile函数分组
select *,
case ntile(3) over(order by newid()) when 1 then 'A' when 2 then 'B' when 3 then 'C' end as new_field
from tablename
where customer = 'X'追问
SQL2000
参考技术D 能给出具体的实例么?追问比如说在客户表中X的客户平均分给A、B、C三个人!
以上是关于SQL语句 如何把表中X的客户随机平均分配给A、B、C三个人!急!的主要内容,如果未能解决你的问题,请参考以下文章
把表A 数据插入表B时提示 ‘将截断字符串或二进制数据。 语句已终止’ 。如何找到被截断数据或字段。
在线等。。。。SQL中如何将一个表中的某一列的数据替换到另一个表中的某一列里。