Regroupement par date et taille
Fermé
totoche34130
-
22 sept. 2015 à 08:57
flokocha Messages postés 1510 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 10 octobre 2015 - 5 oct. 2015 à 17:29
flokocha Messages postés 1510 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 10 octobre 2015 - 5 oct. 2015 à 17:29
A voir également:
- Regroupement par date et taille
- Comment réduire la taille d'un fichier - Guide
- Comment reduire la taille d'une photo - Guide
- Trier par date excel - Guide
- Taille 32x32 correspondance - Forum Windows
- Publipostage date en anglais ✓ - Forum Excel
1 réponse
flokocha
Messages postés
1510
Date d'inscription
lundi 8 mars 2004
Statut
Membre
Dernière intervention
10 octobre 2015
280
5 oct. 2015 à 17:29
5 oct. 2015 à 17:29
Salut,
Je te propose la solution suivante :
- Tout d'abord, on détermine comment calculer ces paliers de 5cm à partir des tailles de ta base. Je propose de procéder de la manière suivante : on calcule le plus petit entier possible lorsqu'on divise la taille par 10, puis on multiplie à nouveau cette taille par 10, à laquelle on ajoute 5 si le modulo de la taille de départ est supérieur ou égal à 5.
Ce qui revient donc à écrire "floor(Taille/10) * 10 + if(Taille%10 >= 5, 5, 0)".
- Il suffit alors de grouper sur cette colonne calculée, puis sur les dates des relevés, pour obtenir les données que tu souhaites :
Je te propose la solution suivante :
- Tout d'abord, on détermine comment calculer ces paliers de 5cm à partir des tailles de ta base. Je propose de procéder de la manière suivante : on calcule le plus petit entier possible lorsqu'on divise la taille par 10, puis on multiplie à nouveau cette taille par 10, à laquelle on ajoute 5 si le modulo de la taille de départ est supérieur ou égal à 5.
Ce qui revient donc à écrire "floor(Taille/10) * 10 + if(Taille%10 >= 5, 5, 0)".
- Il suffit alors de grouper sur cette colonne calculée, puis sur les dates des relevés, pour obtenir les données que tu souhaites :
select floor(Taille/10) * 10 + if(Taille%10 >= 5, 5, 0) as Palier, Datemes, count(*) as Nb_Eleves from TaTable group by Palier, Datemes;