Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment obtenir le nombre total de lignes dans une instruction select exécutée ?

Vous devez soit utiliser SELECT COUNT(*) ... avec la même condition ou ajoutez une colonne avec le nombre de lignes via ROW_NUMBER fonction :

SELECT a.Emp,b.orders, RN = ROW_NUMBER () OVER (ORDER BY a.Emp,b.orders) 
FROM table as a inner join table1 b on a.ID=B.ID

...ou utilisez @@ROWCOUNT après la sélection.

Au lieu de ROW_NUMBER il est plus simple d'utiliser COUNT(*) OVER ( Order By ...) où chaque ligne contient le même nombre total alors que ROW_NUMBER renverrait un numéro séquentiel où seul le dernier enregistrement (selon le ORDER BY ) aurait le nombre total.

Donc, ce qu'Aaron a déjà voulu dire dans sa réponse .