Problem:
Sie möchten das gestrige Datum (ohne Uhrzeit) in einer MySQL-Datenbank anzeigen.
Lösung:
SELECT DATE_SUB(CURDATE(), INTERVAL 1 DAY) AS yesterday_date;
Unter der Annahme, dass heute der 24.09.2020 ist, lautet das Ergebnis:
Gestern_Datum |
---|
2020-09-23 |
Diskussion:
Um das gestrige Datum zu erhalten, müssen Sie vom heutigen Datum einen Tag abziehen. Verwenden Sie CURDATE()
um das heutige Datum zu erhalten. In MySQL können Sie jedes Datumsintervall mit DATE_SUB()
subtrahieren Funktion. Da Sie hier einen Tag abziehen müssen, verwenden Sie DATE_SUB(CURDATE(), INTERVAL 1 DAY)
um das gestrige Datum zu erhalten. Beachten Sie, dass das Ergebnis dieser Berechnung immer noch den Spaltentyp date.
Sie können genauso einfach um ein beliebiges Zeitintervall zurückgehen. Hier ist ein Beispiel:
SELECT DATE_SUB(CURDATE(), INTERVAL 2 MONTH) AS date_two_months_ago;
Auch das morgige Datum können Sie ganz einfach berechnen. Verwenden Sie das DATE_ADD()
Funktion, um einem Datum ein Intervall hinzuzufügen.
SELECT DATE_ADD(CURDATE(), INTERVAL 1 DAY) AS tomorrow_date;