comment sélectionner les N premières lignes d'une table dans T-SQL?
Est-il possible de sélectionner, par exemple, les 10 premières lignes d'un tableau en T-SQL (travail MSSQL)?
Je pense que j'ai vu quelque chose dans Oracle défini comme rownum méta-variable, utilisé de façon suivante
select * from Utilisateurs where rownum<=10
Mais qu'en est MSSQL?
source d'informationauteur dragan.stepanovic | 2009-10-11
Vous devez vous connecter pour publier un commentaire.
Si
@count
est une constante, vous pouvez supprimer les parenthèses:(ce dernier travaille sur SQL Server 2000, tandis que la première nécessite au moins 2005)
Notez que si vous ne spécifiez pas de
ORDER BY
clause puis toutes les 10 lignes peut être retourné, parce que "10 premières lignes" ne veut pas vraiment dire quoi que ce soit jusqu'à ce que vous dites à la base de ce que commande à utiliser.Vous pouvez utiliser Microsoft de la fonction row_number() pour décider quelles lignes de retour. Cela signifie que vous n'êtes pas limité à haut X résultats, vous pouvez prendre des pages.
Vous devez nid de la requête d'origine, parce que sinon vous obtiendrez un message d'erreur vous disant que vous ne pouvez pas faire ce que vous voulez dans la façon dont vous devriez probablement être en mesure de dans un monde idéal.
Vous pouvez également utiliser du nombre de lignes, mais le SOMMET est sans doute mieux et plus propre, d'où le upvote pour Mehrdad
De l'essayer.
Essayez ceci:
ORDERED_UNIQUE_COLUMN pourrait être votre incrémentation de clé primaire ou un timestamp