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

Comment écrire la requête sql pour sélectionner et regrouper par type et compter par type ?

Utilisez simplement l'agrégation conditionnelle :

select name, sum(type = 0) as count_0, sum(type = 1) as count_1
from t
group by name;

Cela utilise une fonctionnalité MySQL qui traite les valeurs booléennes comme des nombres dans un contexte numérique, avec 0 pour faux et 1 pour vrai. Par conséquent, l'addition des valeurs compte le nombre de fois où l'expression est vraie.