J'ai cette requête sql récupérer ID d'une table avec 3 colonnes: ID, Pays et âgesql requête compter les zéros
SELECT Country,
(CASE
WHEN AGE BETWEEN 0 AND 9 THEN '0-9'
WHEN AGE BETWEEN 10 AND 19 THEN '10-19'
WHEN AGE BETWEEN 20 AND 29 THEN '20-29'
WHEN AGE BETWEEN 30 AND 39 THEN '30-39'
WHEN AGE BETWEEN 40 AND 49 THEN '40-49'
ELSE '50+'
END) Age_Bins, COUNT (DISTINCT ID)
FROM MYTABLE
GROUP BY Country, Age_Bins;
Les résultats que je reçois sont quelque chose comme:
UK '0-9' 7;
UK '20-29' 14;
etc...
Mais ce que j'aimerais avoir, c'est aussi UK '10 -19 '0 (où il n'y a pas d'ID dans cette section d'âge). Comment le code sql peut-il être modifié en conséquence pour donner aussi des résultats avec des comptes zéro? Merci
J'aime cette solution, car elle semble simple, bien qu'elle n'utilise pas directement "COUNT". Cependant je ne sais pas si cela a des inconvénients par rapport à la première solution présentée ci-dessus. – francogrex
J'utilise cette approche de colonne virtuelle tout le temps dans des applications du monde réel qui nécessitent des «bacs» ou des «compartiments». Il fonctionne rapidement et les résultats sont précis. La requête est simple à comprendre et à maintenir. Je ne connais aucun inconvénient. Pourquoi pas un vote? :-) – Tim
Bien sûr. J'ai voté pour les deux solutions et je donne la meilleure réponse :) – francogrex