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

requête mysql pour obtenir le nombre par groupe et le nombre total

la méthode optimisée consiste à calculer d'abord le nombre, puis à placer simplement la variable dans votre instruction select :

set @rowCount = (select count(col1) from table1);
select col1, count(col1), @rowCount from table1 group by col1;

Voir le résultat

L'approche donnée par @Meherzad calculera le nombre de lignes plusieurs fois. Mais si vous voulez le faire en une seule requête, vous pouvez utiliser :

select col1, count(col1), (select count(col1) from table1) rowCount from table1 group by col1;