Multi COUNT() sur une seule et même table avec Oracle

Petite astuce que je viens de lire, comment gérer sur une table, plusieurs statistiques différentes sur plusieurs colonnes d’une seule et même table:

Cette requête vous affichera le nombre de personne agé de plus de 25 ans, le nombre d’homme, le nombre de femme, provenant d’une table fictive utilisateur, par exemple.

SELECT COUNT( CASE WHEN t_userAge >= 25 THEN 1 END) AS count_age,
           COUNT( CASE WHEN t_userSex = 'M' THEN 1 END) AS count_male,
           COUNT( CASE WHEN t_ userSex = 'F' THEN 1 END) AS count_female,
FROM t_users;

La fonction COUNT() sert à retourner le nombre d’enregistrement sur l’expression ou la colonne donnée en argument.

La structure CASE WHEN THEN ELSE END est une structure proche du if then else, retournant une valeur en fonction de la condition.

Source: