select top 1 成员 from 表 where 家庭='A' order by newid() 什么叫10条记录?
select top 1 成员 from 表 where 家庭='A' order by newid() union all select top 1 成员 from 表 where 家庭='A' order by newid() union all select top 1 成员 from 表 where 家庭='A' order by newid() union all ......
select top 1 成员 from 表 where 家庭='A' order by newid() go 10
select top 10 成员 from 表 where 家庭='A'
SELECT TOP 10 b.成员 FROM master..spt_values AS a,表 AS b WHERE a.TYPE='P'AND a.number<10 AND b.家庭='A' ORDER BY NEWID()
create table tb(id int,col varchar(20)) insert into tb select 1,'aa' insert into tb select 2,'bb' insert into tb select 3,'ccc' go SELECT top 10 a.id,a.col FROM tb A, sysobjects b order by NEWID() go DROP TABLE tb /* id col ----------- -------------------- 2 bb 3 ccc 1 aa 3 ccc 3 ccc 3 ccc 1 aa 2 bb 2 bb 3 ccc(10 行受影响)*/
SELECT TOP 10 d.成员 FROM master..syscolumns AS a,master..syscolumns AS b,master..syscolumns AS c,表 AS c WHERE b.家庭='A' ORDER BY NEWID()在Top N,用一個足夠記錄的結果集與這表 生成笛卡集
什么叫10条记录?
union all
select top 1 成员 from 表 where 家庭='A' order by newid()
union all
select top 1 成员 from 表 where 家庭='A' order by newid()
union all
......
go 10
FROM master..spt_values AS a,表 AS b
WHERE a.TYPE='P'AND a.number<10 AND b.家庭='A'
ORDER BY NEWID()
insert into tb select 1,'aa'
insert into tb select 2,'bb'
insert into tb select 3,'ccc'
go
SELECT top 10 a.id,a.col
FROM tb A, sysobjects b
order by NEWID()
go
DROP TABLE tb
/*
id col
----------- --------------------
2 bb
3 ccc
1 aa
3 ccc
3 ccc
3 ccc
1 aa
2 bb
2 bb
3 ccc(10 行受影响)*/
FROM master..syscolumns AS a,master..syscolumns AS b,master..syscolumns AS c,表 AS c
WHERE b.家庭='A'
ORDER BY NEWID()在Top N,用一個足夠記錄的結果集與這表 生成笛卡集