par
Ryle » 19 août 2006, 12:03
Option 3 : Si c'est sur l'année complète que le cumul t'interesse, tu peux aussi utiliser la commande GROUP BY pour regrouper des éléments :
Code : Tout sélectionner
-- selectionne la partie année des dates et la somme de tes valeurs
SELECT YEAR(ta_date) AS annee, SUM(ton_champ) AS cumul
FROM ta_table
GROUP BY annee -- regroupe les résultat sur la colonne annee
ORDER BY annee -- tri sur la colonne annee
Tu obtiendras ainsi des données sous la forme :
Si par contre le date à date est important, au choix, tu fais tes deux requêtes (ce qui est probablement le plus simple), soit effectivement, tu récupères le tout en php, puis tu fais une boucle et stocke les résultat dans des variables ou un tableau en fonction de la date
while ($row = mysql_fetch_assoc($res) ) {
$tableau[$row['annee']] += $row['ton_champ'];
}
Option 3 : Si c'est sur l'année complète que le cumul t'interesse, tu peux aussi utiliser la commande GROUP BY pour regrouper des éléments :
[code]-- selectionne la partie année des dates et la somme de tes valeurs
SELECT YEAR(ta_date) AS annee, SUM(ton_champ) AS cumul
FROM ta_table
GROUP BY annee -- regroupe les résultat sur la colonne annee
ORDER BY annee -- tri sur la colonne annee
[/code]
Tu obtiendras ainsi des données sous la forme :
[code]ANNEE | CUMUL
-----------
2003 | 12
2005 | 83
2006 | 33[/code]
Si par contre le date à date est important, au choix, tu fais tes deux requêtes (ce qui est probablement le plus simple), soit effectivement, tu récupères le tout en php, puis tu fais une boucle et stocke les résultat dans des variables ou un tableau en fonction de la date
[php]while ($row = mysql_fetch_assoc($res) ) {
$tableau[$row['annee']] += $row['ton_champ'];
}[/php]