TOP (Entity SQL)

SELECT 句には、オプションの ALL/DISTINCT 修飾子に続けてオプションの TOP サブ句を指定できます。TOP サブ句は、クエリ結果の先頭から指定した行セットだけを返すよう指定します。

[ TOP (n) ]

引数

  • n
    返される行数を指定する数値式です。n には単一の数値リテラルまたは単一のパラメータを使用できます。

解説

TOP 式には、単一の数値リテラルまたは単一のパラメータを使用してください。定数リテラルを使用する場合は、リテラルの種類を Edm.Int64 (byte、int16、int32、int64、または Edm.Int64 に昇格可能な型にマップされる任意のプロバイダ型) に暗黙的に昇格でき、その値が 0 以上である必要があります。それ以外の場合は、例外が発生します。パラメータを式として使用する場合は、パラメータ型も 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 句の SKIP サブ句および LIMIT サブ句を使用します。TOP および SKIP/LIMIT は、同時には指定できません。

参照

リファレンス

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

概念

Entity SQL リファレンス