云点博客-关注全栈开发云点博客

关注全栈开发
提升用户体验

MSSQL 中 随机取得一条数据的方法

        有时候我们需要在一堆数据中每次随机展示几条数据出来 , 之前找了很多方法 , 也用过视图加临时字段来解决 , 但终究都是太麻烦了 , 这里有个最简单但是超实用的方法来使用 . 

        正文就一行代码

select top n * from TableName order by newid()

        是不是简洁明了 , 快拿去使用吧 !

         原因是NEWID()为表里的每一行数据在内存里生成一个GUID。而因为GUID的值唯一而很随机,这样的话按GUID排序取出来的数据相对的也很随机。
除了能随机的取出一条数据 , 还可以使
用 TOP N PERCENT (取得前N%的数据) . 

           参考链接 :  http://msdn.microsoft.com/en-us/library/cc441928.aspx

赞(0) 打赏