Mit welchem SQL-Statement kann ich mir in MySQL z.B. die Einträge der letzten bzw. nächsten 30 Tage abrufen?
- In MySQL haben Sie die Möglichkeit, ein SELECT-Statement auszuführen, dass Ihnen aus einer Tabelle sämtliche Einträge auf Basis einer Datums-Spalte ausgibt.
- Für alle Datensätze in der Vergangenheit verwenden Sie die Funktion DATE_SUB().
- Beispiel:
/* Ausgabe aller Datensaetze aus der Tabelle "TestTabelle", bei denen die Spalte "DatumsSpalte" einen Wert innerhalb der letzten 30 Tage enthaelt */ SELECT * FROM TestTabelle WHERE DatumsSpalte >= DATE_SUB(NOW(),INTERVAL 30 DAY)
- Für alle Datensätze in der Zukunft verwenden Sie die Funktion DATE_ADD().
- Beispiel:
/* Ausgabe aller Datensaetze aus der Tabelle "TestTabelle", bei denen die Spalte "DatumsSpalte" einen Wert innerhalb der naechsten 30 Tage enthaelt */ SELECT * FROM TestTabelle WHERE DatumsSpalte >= DATE_ADD(NOW(),INTERVAL 30 DAY)
- Die wichtigsten INTERVAL-Parameter sind:
* SECOND * MINUTE * HOUR * DAY * WEEK * MONTH * YEAR