Problem:
Sie möchten einem Datum in einer MySQL-Datenbank Tage hinzufügen.
Beispiel:
Unsere Datenbank hat eine Tabelle namens trip
mit Daten in den Spalten id
, city
und start_date
.
id | Stadt | Startdatum |
---|---|---|
1 | Chicago | 22.06.2019 |
2 | Houston | 2019-07-15 |
3 | Dallas | 2019-08-30 |
4 | Austin | 2019-09-23 |
Fügen wir zwei Tage zu den Startdaten hinzu und erhalten die Reisestädte mit den neuen Startdaten.
Lösung:
Wir verwenden das DATE_ADD()
Funktion. Hier ist die Abfrage, die Sie schreiben würden:
SELECT city, DATE_ADD(start_date, INTERVAL 2 DAY) AS later_date FROM trip;
Hier ist das Ergebnis der Abfrage:
Stadt | Startdatum |
---|---|
Chicago | 2019-06-24 |
Houston | 2019-07-17 |
Dallas | 2019-09-01 |
Austin | 25.09.2019 |
Diskussion:
Verwenden Sie das DATE_ADD()
Funktion, wenn Sie ein bestimmtes Datum in einer MySQL-Datenbank erhöhen möchten. In unserem Beispiel haben wir jedes Startdatum um zwei Tage erhöht.
Diese Funktion benötigt zwei Argumente. Das erste Argument ist das Datum oder die Datumszeit, die Sie ändern möchten. Dieses Argument kann der Name einer date/datetime-Spalte oder ein Ausdruck sein, der einen date/datetime-Wert zurückgibt. In unserem Beispiel haben wir das start_date
verwendet -Spalte, die vom Datumsdatentyp ist.
Das zweite Argument ist der INTERVAL-Operator, gefolgt von einer ganzen Zahl, die die Anzahl der Einheiten (in unserem Beispiel 2) und die hinzuzufügende Datums-/Zeiteinheit (in unserem Beispiel DAY) angibt. Mehr über Intervalleinheiten finden Sie im Abschnitt Interval Expression and Unit Arguments der MySQL-Dokumentation.
DATE_ADD()
gibt einen neuen date- oder datetime-Wert zurück. In unserem Beispiel die Fahrt nach Houston hat ein neues Startdatum:„2019-07-17“.