隨機排序或選取n筆資料(使用SQL、LINQ與Lambda)

其實這篇主要是要記錄隨機選取n筆資料,但因為在隨機選取之前必須要做隨機排序,所以就一起記錄。

隨機排序

SQL(適用於 SQL Server)

SELECT FROM Table ORDER BY NewID()

LINQ

from t in Table
orderby Guid.NewGuid()
select t

Lambda

Table.OrderBy(x=>Guid.NewGuid())

至於隨機選取 n 筆資料就是隨機排序的變化版(下面的範例是隨機選取一筆)

SQL(適用於 SQL Server)

SELECT TOP 1 FROM Table ORDER BY NewID()

LINQ

(fom t in Table
orderby Guid.NewGuid()
select t).Take(1)

Lambda

Table.OrderBy(x=>Guid.NewGuid()).Take(1)
posted @ 2012-06-07 10:49  yuanlin  阅读(1113)  评论(0编辑  收藏  举报