TOP (Entity SQL)

SELECT 子句可以在可选的 ALL/DISTINCT 修饰符之后具有可选的 TOP 子子句。TOP 子子句指定查询结果中将只返回第一组行。

[ TOP (n) ]

参数

  • n
    指定要返回的行数的数字表达式。n 可以是单个数值,也可以是单个参数。

备注

TOP 表达式必须是单个数值或单个参数。如果使用一个常量文本,则该文本类型必须可隐式提升为 Edm.Int64(字节、int16、int32 或 int64,或映射到可提升为 Edm.Int64 的类型的任何提供程序类型),并且其值必须大于或等于零。否则,将引发异常。如果将一个参数用作表达式,则该参数类型也必须可隐式提升为 Edm.Int64,但由于参数值是后期绑定的,因此在编译过程中不会对实际参数值进行任何验证。

下面是常量 TOP 表达式的示例:

select distinct top(10) c.a1, c.a2 from T as a

下面是参数化 TOP 表达式的示例:

select distinct top(@topParam) c.a1, c.a2 from T as a

除非对查询进行排序,否则 TOP 具有不确定性。如果需要确定的结果,请在 ORDER BY 子句中使用 SKIPLIMIT 子子句。TOP 和 SKIP/LIMIT 是互斥的。

另请参见

参考

SELECT (Entity SQL)
SKIP (Entity SQL)
LIMIT (Entity SQL)
ORDER BY (Entity SQL)

概念

Entity SQL 参考