张工的SQL Server经验心得

主要分享一些个人的SQL Server编程开发优化经验心得。个人公众号【SQL数据库编程】(微信号:zhang502219048)

博客园 首页 新随笔 联系 订阅 管理

问题:
博主在2010-2011学年,广东技术师范大学大四的时候,去过红海人力集团面试数据库职位,很清楚记得当时有一道笔试题目是:编写sql从表里面随机取出10条记录。

解决方案:
在sql server中,有一个随机函数newid(),可以用order by newid()来解决随机排序和随机取出数据的问题。

脚本:

/*
    脚本来源:https://www.cnblogs.com/zhang502219048/p/10989906.html
*/
create table #t
(
    ID int
)

--准备好测试数据
insert into #t
values (1), (2), (3), (4), (5)

--使用newid()进行随机排序
select ID
from #t
order by newid()

--使用top和newid()随机取出1个记录
select top 1 ID
from #t
order by newid()

drop table #t

运行结果:

后记:
以上是本人在处理数据库查询随机排序和取数问题的解决办法,特此分享一下,希望对遇到同样问题的朋友有所帮助。如果帮助到了你,欢迎给我打赏支持一下哦。
【转载请注明博文来源:https://www.cnblogs.com/zhang502219048/p/10989906.html】

posted on 2019-06-08 08:45  张工502219048  阅读(2748)  评论(0编辑  收藏  举报