86 votes

Compter le nombre de lignes ayant la même valeur

Comment écrire une requête SQL pour compter le nombre total d'une valeur num spécifique dans la colonne num d'une table ?

Supposons que nous disposions des données suivantes.

NOM

NUM

SAM

1

BOB

1

JAKE

2

JOHN

4

Prenons l'exemple de la requête suivante :

SELECT WHERE num = 1;

Cette opération permet d'obtenir les deux lignes suivantes.

NOM

NUM

SAM

1

BOB

1

146voto

Meherzad Points 5012

Essayer

SELECT NAME, count(*) as NUM FROM tbl GROUP BY NAME

SQL FIDDLE

19voto

Sirko Points 32515

Si vous souhaitez obtenir le résultat pour toutes les valeurs de NUM :

SELECT `NUM`, COUNT(*) AS `count` 
FROM yourTable
GROUP BY `NUM`

Ou juste pour une personne en particulier :

SELECT `NUM`, COUNT(*) AS `count` 
FROM yourTable
WHERE `NUM`=1

16voto

DH__ Points 2210

POUR UN NUMÉRO SPÉCIFIQUE :

SELECT COUNT(1) FROM YOUR_TABLE WHERE NUM = 1

POUR TOUS LES NUM :

SELECT NUM, COUNT(1) FROM YOUR_TABLE GROUP BY NUM

12voto

Deval Shah Points 757
SELECT 
   COUNT(NUM) as 'result' 
FROM 
   Table1 
GROUP BY 
   NUM 
HAVING NUM = 1

5voto

Luv Points 7630

Essayez cette requête

select NUM, count(1) as count 
from tbl 
where num = 1
group by NUM
--having count(1) (You condition)

SQL FIDDLE

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X