sql server隨機排序和隨機取出n條數據


問題:
博主在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】


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM