Factoriser le nombre de requête
Salut programmeurs programmeuses,
Allons droit au but !
J'utilise en PHP, une base de données MySQL, et dans l'un de mes scripts j'éxecute 5 requêtes d'affilée, une pour chaque tranche d'âge:
Code:
1 2 3 4 5 6
|
select count(*) from t_personne where age < 35;
select count(*) from t_personne where age BETWEEN 35 and 50;
select count(*) from t_personne where age BETWEEN 50 and 65;
select count(*) from t_personne where age BETWEEN 65 and 80;
select count(*) from t_personne where age > 80; |
Comme l'indique le titre de la discussion, y'a-t-il un moyen de lancer une seule requête pour les 5 tranches d'âge, en d'autre termes comment factoriser ?
J'ai une idée ce à quoi pourrait ressembler la requête idéale, elle est fausse mais la voilà:
Code:
1 2 3 4 5 6 7 8
|
select count(age) as tr1, count(age) as tr2, count(age) as tr3, count(age) as tr4, count(age) as tr5
from t_personne
where tr1 < 35
and (tr2 BETWEEN 35 and 50)
and (tr3 BETWEEN 50 and 65)
and (tr4 BETWEEN 65 and 80)
and tr5 > 80; |
Si ce genre de requête est possible, je pourrais alors gagner en performance.
Je vous remercie d'avance.