Categories: SQLSQL Server

[SQL] Nombre d’enregistrements dans une table.

On a souvent besoin de connaitre le nombre d’enregistrements (rows) d’une table.

On peut bien sur faire une requête avec un count sur une colonne

SELECT COUNT(monid) FROM matable

par contre, cette requête peut s’avérer très lente pour compter le nombre de lignes.
(Plus de 1 min pour une table de 2 500 000 lignes).


La requête suivante en s’appuyant sur la table sys.partitions permet d’obtenir le même résultat beaucoup plus rapidement.

SELECT rows
FROM sys.partitions
WHERE OBJECT_NAME(object_id) IN (matable)

(Instantané pour une table de 2 500 000 lignes).

Petite variante permettant de connaitre la table ayant le plus d’enregistrement.

SELECT OBJECT_NAME(object_id), rows
FROM sys.partitions
WHERE rows=(select max(rows) from sys.partitions)

(Testé sous sql server 2008).



Voilà, j’espère que ces requêtes vous permettrons de comptabiliser efficacement vos données.
Et si vous avez envie d’en savoir plus sur SQL je vous invite aussi à lire :

Sources:

Points d’intérêt de cet article : Count(), compter nombre enregistrement, sql server, sys.partitions
adminArnaud

Share
Published by
adminArnaud

Recent Posts

[Agile] De l’importance d’écrire des taches claires pour vos User Stories

Dans le monde de l'agilité, le Product Owner se doit d'écrire des user stories simples,… Read More

4 ans ago

[Actu] Printemps des poètes

Parce que, contrairement à ce que l'on pourrait penser ce soir qu'il pleut des cordes,… Read More

5 ans ago

[Actu] Élections présidentielles 2017

Un peu d’humour en attendant le résultat des élections présidentielles françaises. Read More

7 ans ago

[Linux] Activer/Désactiver l’UTC en ligne de commande

Si vous n'avez pas accès à l'interface graphique de votre Linux, vous pouvez modifier l'horloge… Read More

8 ans ago

[Actu] Ces fous qui attaquent Paris

Si quelqu'un m'avait dit en Janvier que je réécrirais un article dans l'année sur des… Read More

8 ans ago

[Actu] Fin des vacances, c’est la rentrée 2015 !

Il y a quelques semaines, mois, voire années (tout est subjectif) nos enfants (et nos… Read More

9 ans ago