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

問題:
博主在2010-2011學年,廣東技術師範大學大四的時候,去過紅海人力集團面試數據庫職位,很清楚記得當時有一道筆試題目是:編寫sql從表裏面隨機取出10條記錄。html

解決方案:
在sql server中,有一個隨機函數newid(),能夠用order by newid()來解決隨機排序和隨機取出數據的問題。面試

腳本:
sql

/*
    腳原本源: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】函數

相關文章
相關標籤/搜索