Utiliser le group by sur deux champs et compter en SQL

J’ai une table dans mon mysql db qui a deux colonnes: groupe et sous-groupe. Voir ci-dessous.

group, subGroup grp-A, sub-A grp-A, sub-A grp-A, sub-B grp-B, sub-A grp-B, sub-B grp-B, sub-B 

J’essaie d’obtenir le nombre d’enregistrements pour chaque groupe / sous-groupe de couples unique.

C’est ce que j’attends:

 group, subGroup, count grp-A, sub-A, 2 grp-A, sub-B, 1 grp-B, sub-A, 1 grp-B, sub-B, 2 

Après avoir lu certains articles, j’ai essayé plusieurs requêtes SQL en utilisant group by, count (), mais je n’arrive pas à obtenir le résultat attendu. Comment puis-je réparer cela?

Je pense que vous cherchez: SELECT a, b, COUNT(a) FROM tbl GROUP BY a, b

 SELECT group,subGroup,COUNT(*) FROM tablename GROUP BY group,subgroup 

Vous devez regrouper les deux colonnes, groupe et sous-groupe, puis utiliser la fonction d’agrégation COUNT() .

 SELECT group, subgroup, COUNT(*) FROM groups GROUP BY group, subgroup