Bei zeitbehafteten Datensätzen ist es oftmals hilfreich, sich spezielle Zeiträume anzuschauen. Beispielsweise was alles letzten Monat passiert ist. Das ganze lässt sich in MySQL so bewerkstelligen, wie in der folgenden Erklärung.
Im Prinzip lässt sich die Anfrage für den letzten Monat recht einfach in reinem SQL abbilden. Einige verwenden PHP als Hilfmittel. Es sind aber nur ein paar CASTs notwenig um es nur in SQL zu haben:
Download Code!
SELECT
ip,
a_date_time_field,
CAST(a_date_time_field AS DATE) AS the_date,
conversion
FROM `orders`
WHERE
MONTH(a_date_time_field)= MONTH(DATE_SUB(NOW(), INTERVAL 1 MONTH))
AND YEAR(a_date_time_field)=YEAR(NOW());
ORDER BY the_date ASC
Das Feld a_date_time_field ist, wie der Name schon vermuten lässt ein Feld mit dem Typ DATE_TIME in MySQL. Im Beispiel also unser Feld mit den Datums und Uhrzeitwerten.
Der Interesannte Teil ist der, in der WHERE Bedingung. In der WHERE-Klausel wird der letzte Monat und das aktuelle Jahr zu Bedingung. Also genau das was wir brauchen.