Randomly Sorting Query Results
查詢結果隨機排序
Q. How can I randomly sort query results?
問:怎樣才能對查詢結果隨機排序?
A. To randomly order rows, or to return x number of randomly chosen rows,
you can use the RAND function inside the SELECT statement.
But the RAND function is resolved only once for the entire query,
so every row will get same value.
You can use an ORDER BY clause to sort the rows by the result from the NEWID function,
as the following code shows:
答:對結果記錄隨機排序,或隨機返回X條記錄,可以通過在SELECT語句中使用RAND函數(shù)來實現(xiàn)。但是RAND函數(shù)在查詢中只生成一次,因此每一行都將得到相同的值??梢酝ㄟ^在ORDER BY子句中使用NEWID函數(shù)來對結果進行排序的方法來實現(xiàn),代碼如下:
SELECT *
FROM Northwind..Orders
ORDER BY NEWID()
SELECT TOP 10 *
FROM Northwind..Orders
ORDER BY NEWID()