SKIP (Entity SQL)

在 ORDER BY 子句中使用 SKIP 子子句可执行物理分页。 SKIP 不能脱离 ORDER BY 子句单独使用。

[ SKIP n ]

参数

  • n
    要跳过的项数。

备注

如果 ORDER BY 子句中存在 SKIP 表达式子子句,则将根据排序规范对结果排序,结果集将包含从紧接着 SKIP 表达式之后的下一行开始的行。 例如,SKIP 5 将跳过前五行,并返回第六行以及后续行。

Bb738680.note(zh-cn,VS.100).gif注意:
如果 TOP 修饰符和 SKIP 子子句同时出现在同一个查询表达式中,Entity SQL 查询将无效。应重写查询,将 TOP 表达式更改为 LIMIT 表达式。

Bb738680.note(zh-cn,VS.100).gif注意:
在 SQL Server 2000 中,对非键列同时使用 SKIP 和 ORDER BY 可能返回不正确的结果。如果非键列中有重复数据,那么跳过的行数可能多于指定的行数。 这是由于 SQL Server 2000 对 SKIP 的解释方式造成的。 例如,在下面的代码中,如果 E.NonKeyColumn 有重复值,则跳过的行可能超过 5 行:

SELECT [E] FROM Container.EntitySet AS [E] ORDER BY [E].[NonKeyColumn] DESC SKIP 5L

示例

下面的 Entity SQL 查询将 ORDER BY 运算符与 SKIP 结合使用来指定用于 SELECT 语句所返回的对象的排序顺序。 此查询基于 AdventureWorks 销售模型。 若要编译并运行此查询,请执行下列步骤:

  1. 执行如何:执行返回 StructuralType 结果的查询 (EntityClient) 中的过程。

  2. 将以下查询作为参数传递给 ExecuteStructuralTypeQuery 方法:

SELECT VALUE p FROM AdventureWorksEntities.Products 
    AS p order by p.ListPrice SKIP(@price)

另请参见

任务

如何:对查询结果分页(实体框架)

参考

ORDER BY (Entity SQL)
TOP (Entity SQL)

概念

分页 (Entity SQL)