J'essaie de faire quelque chose de relativement simple ici. Fondamentalement, j'ai une table avec un tas de lignes en elle marquée d'un horodatage (format: 2009-05-30 00:14:57).Comment faire pour décomposer les rapports par mois avec php et mysql?
Ce que je voulais faire est une requête qui sort toutes les lignes, et les divise par mois, donc je suis parti avec un résultat final comme:
Février
pour nom rowID Date
nom rowID date de commande
nom rowID ordre des dates
janvier
nom rowID date de commande
nom rowID ordre des dates
ROWI Nom D Date de commande
etc.
J'ai quelques idées vagues comment faire - ils semblent verbeux.
L'une des façons serait de faire une requête pour chaque mois. Je dériverais ce que le mois courant est en PHP puis construirais un for() qui remonte à un certain nombre de mois.
aime:
$currentmonth = 8;
$last6months = $currentmonth - 6;
for($i = $currentmonth; $i == $last6months; $i--) {
$sql = 'SELECT * FROM reports WHERE MONTH(reports.when) = $currentmonth ';
$res = mysql_query($sql);
// something would go here to convert the month numeral into a month name $currentmonthname
echo $currentmonthname;
while($row = mysql_fetch_array($res)) {
// print out the rows for this month here
}
}
Y at-il une meilleure façon de le faire?
pouvez-vous me donner un exemple? – SamotnyPocitac