在 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 可能返回不正确的结果。如果非键列中有重复数据,那么跳过的行数可能多于指定的行数。这是由于 SQL Server 2000 对 SKIP 的解释方式造成的。例如,在下面的代码中,如果
|
示例
下面的 Entity SQL 查询将 ORDER BY 运算符与 SKIP 结合使用来指定用于 SELECT 语句所返回的对象的排序顺序。此查询基于 AdventureWorks 销售模型。若要编译并运行此查询,请执行下列步骤:
将以下查询作为参数传递给
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
另请参见
任务
参考
ORDER BY (Entity SQL)
TOP (Entity SQL)