使用order by newid() 随即排序 然后用top 1/3客户数量取A的客户
然后在剩下2/3的记录中 再用newid()随机排序 然后取1/2的客户给B
剩下的为C的客户
使用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'
取出来:
一.获取表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)
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'
能给出具体的实例么?