这种用法相信在网站中经常使用,如要在表中随机取出10条记录,如果使用编程语言进行运算的话会很麻烦而且效率低下。在Sql Server中自带了random()函数用于生成随机数,其实它还自带了另外一个随机函数newid();newid()在扫描每条记录时都会生成一个随机的值:
执行select newid();运行结果
可以看到这并不是一个随机的数字类型。
在表中随机取出n条记录,就可以使用select top n * from table order by newid()实现;
这种用法相信在网站中经常使用,如要在表中随机取出10条记录,如果使用编程语言进行运算的话会很麻烦而且效率低下。在Sql Server中自带了random()函数用于生成随机数,其实它还自带了另外一个随机函数newid();newid()在扫描每条记录时都会生成一个随机的值:
执行select newid();运行结果
可以看到这并不是一个随机的数字类型。
在表中随机取出n条记录,就可以使用select top n * from table order by newid()实现;