Comment puis-je append un total à la dernière ligne de mon SQL?

J'essaie d'afficher une ligne, Total, qui fera la sum de la colonne Count. Le code suivant aura deux colonnes, Environment et Count.

select case when env is null THEN 'Unknown' else env end, count(*) as Count from env_table group by env order by env / 

Sortie Je voudrais:

Windows 200

Linux 120

Total 320

Comme vous pouvez le voir ci-dessus, ce que je voudrais faire est d'append une ligne appelée "Total" à la fin qui ferait essentiellement une sum (count (*)). Quelle est la syntaxe appropriée pour le faire? Merci!

Utilisez le modificateur WITH ROLLUP pour GROUP BY :

 SELECT IFNULL(env, 'Unknown'), COUNT(*) AS Count FROM env_table GROUP BY env WITH ROLLUP ORDER BY env 

Peut-être quelque chose comme ça?

 SELECT IFNULL(env, 'Unknown'), COUNT(*) AS Count FROM env_table GROUP BY env ORDER BY env UNION ALL SELECT null, Count(*) FROM env_table 
 SELECT env, count FROM (SELECT CASE WHEN env is null THEN 'Unknown' ELSE env END env, count(*) count FROM env_table GROUP BY env ORDER BY env) UNION ALL SELECT 'Total' env, count(*) count FROM env_table 
 SELECT COALESCE(env, 'Total') AS Description, COUNT(*) AS Count FROM env_table GROUP BY env WITH ROLLUP ORDER BY env