Bonjour à tous,
J'ai besoin d'aide concernant une requête MySQL sur une table de personnes. Dans cette table, il y a quelques informations concernant les personnes et la date de naissance avec laquelle je calcule l'âge.
Mon objectif est d'afficher une liste de tous les âges de ces personnes, avec pour chaque âge le nombre de personnes qui ont cet âge (puis trier selon cette seconde information). ça donnerait :
Pour effectuer cela, j'utilise la double requête ci-dessous qui affiche bien les éléments souhaités mais avec un classement par âge.
ça affiche ceci :
Comment afficher ce même tableau trié par nombre de membres ?
Merci de votre aide.
Modifié par Agold (24 Sep 2018 - 13:36)
J'ai besoin d'aide concernant une requête MySQL sur une table de personnes. Dans cette table, il y a quelques informations concernant les personnes et la date de naissance avec laquelle je calcule l'âge.
Mon objectif est d'afficher une liste de tous les âges de ces personnes, avec pour chaque âge le nombre de personnes qui ont cet âge (puis trier selon cette seconde information). ça donnerait :
Age Nombre de membres
35 50
44 40
25 20
28 10
Pour effectuer cela, j'utilise la double requête ci-dessous qui affiche bien les éléments souhaités mais avec un classement par âge.
$sql = 'SELECT DISTINCT FLOOR((TO_DAYS(NOW()) - TO_DAYS(date)+1)/365.25) AS age FROM membres ORDER BY age';
$res = mysqli_query($connexion, $sql);
$nb = mysqli_num_rows($res);
while ($data = mysqli_fetch_assoc($res))
{
$sql2 = 'SELECT *, FLOOR((TO_DAYS(NOW()) - TO_DAYS(date)+1)/365.25) AS age FROM membres HAVING age = ' . $data['age'];
$res2 = mysqli_query($connexion, $sql2);
$nb_data_par_cat[] = mysqli_num_rows($res2);
$age_data[] = $data['age'];
}
ça affiche ceci :
Age Nombre de membres
15 7
16 5
17 4
18 22
Comment afficher ce même tableau trié par nombre de membres ?
Merci de votre aide.
Modifié par Agold (24 Sep 2018 - 13:36)