SKIP (Entity SQL)
您可以在 ORDER BY 子句中使用 SKIP 子句執行實際分頁。SKIP 不可單獨使用於 ORDER BY 子句之外。
[ SKIP n ]
引數
- n
要略過的項目數目。
備註
如果 ORDER BY 子句中有 SKIP 運算式次子句,結果將會依據排序規格排序,而且結果集將會包括從 SKIP 運算式後面一個資料列開始的資料列。例如,SKIP 5 將會略過前五個資料列,並且傳回從第六個資料列以後的資料列。
注意: |
---|
如果 TOP 修飾詞和 SKIP 之子句兩者出現在同一個查詢運算式中,則 Entity SQL 查詢會變成無效。請將 TOP 運算式變更為 LIMIT 運算式來重新撰寫此查詢。 |
注意: |
---|
在 SQL Server 2000 中,在非索引鍵資料行上使用 SKIP 搭配 ORDER BY 可能會傳回不正確的結果。如果非索引鍵資料行中有重複的資料,可能會略過超過所指定數目的資料行。這是因為 SKIP 針對 SQL Server 2000 轉譯的方式所造成的。舉例來講,在以下程式碼中,如果 E.NonKeyColumn 中有重複的值,就會略過超過五個資料行:
SELECT [E] FROM Container.EntitySet AS [E] ORDER BY [E].[NonKeyColumn] DESC SKIP 5L
|
範例
以下 Entity SQL 查詢使用 ORDER BY 運算子搭配 SKIP 來指定 SELECT 陳述式所傳回物件使用的排序順序。此查詢是以 AdventureWorks Sales Model 為依據。若要編譯及執行此查詢,請遵循以下步驟:
將下列查詢當成引數傳遞至
ExecuteStructuralTypeQuery
方法:
SELECT VALUE p FROM AdventureWorksEntities.Product
AS p order by p.ListPrice SKIP(70)
輸出如下所示:
ProductID: 392
Name: Hex Nut 3
ProductNumber: HN-6320
MakeFlag: False
ProductID: 393
Name: Hex Nut 14
ProductNumber: HN-7161
MakeFlag: False
ProductID: 394
Name: Hex Nut 15
ProductNumber: HN-7162
MakeFlag: False
ProductID: 395
Name: Hex Nut 4
ProductNumber: HN-8320
MakeFlag: False
ProductID: 396
Name: Hex Nut 18
ProductNumber: HN-9161
MakeFlag: False
另請參閱
工作
HOW TO:逐頁檢視查詢結果 (Entity Framework)
參考
ORDER BY (Entity SQL)
TOP (Entity SQL)