Partager via


TOP (Entity SQL)

La clause SELECT peut présenter une sous-clause TOP facultative à la suite du modificateur ALL/DISTINCT facultatif. La sous-clause TOP indique que seul le premier ensemble de lignes sera retourné à partir du résultat de la requête.

[ TOP (n) ]

Arguments

  • n
    Expression numérique spécifiant le nombre de lignes à retourner. n peut être un littéral numérique unique ou un paramètre unique.

Notes

L'expression TOP doit être un littéral numérique unique ou un paramètre unique. Si un littéral constant est utilisé, le type de littéral doit implicitement pouvoir être promu en Edm.Int64 (octet, int16, int32 ou int64 ou tout type de fournisseur correspondant à un type qui peut être promu en Edm.Int64) et sa valeur doit être supérieure ou égale au zéro. Dans le cas contraire, une exception est levée. Si un paramètre est utilisé comme expression, le type du paramètre doit aussi pouvoir être implicitement promu en Edm.Int64, mais la valeur réelle du paramètre ne pourra pas être validée au moment de la compilation, car les valeurs de paramètres sont liées tardivement.

L'exemple suivant est une expression TOP constante :

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

L'exemple suivant est une expression TOP paramétrée :

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

TOP n'est pas déterministe, à moins que la requête soit triée. Si vous avez besoin d'un résultat déterministe, utilisez les sous-clauses SKIP et LIMIT dans la clause ORDER BY. TOP et SKIP/LIMIT s'excluent mutuellement.

Voir aussi

Référence

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

Concepts

Référence Entity SQL