In MySQL können Sie das DATE_ADD()
verwenden Funktion, um einem Datum eine bestimmte Zeitspanne hinzuzufügen. Sie können es beispielsweise verwenden, um 5 Tage zu einem bestimmten Datum hinzuzufügen. Sie können angeben, ob Tage, Wochen, Monate, Quartale, Jahre usw. hinzugefügt werden sollen. Sie können auch einen Zeitwert wie Sekunden, Mikrosekunden usw. hinzufügen.
Dieser Artikel enthält Beispiele, die zeigen, wie das DATE_ADD()
Funktion funktioniert.
Syntax
Die Syntax lautet wie folgt:
DATE_ADD(date,INTERVAL expr unit)
Beispiel 1 – Grundlegende Verwendung
Hier ist ein Anwendungsbeispiel.
SELECT DATE_ADD('2020-10-01', INTERVAL 20 DAY) AS Result;
Ergebnis:
+------------+ | Result | +------------+ | 2020-10-21 | +------------+
Dieses Beispiel addiert 20 Tage zu dem vom ersten Argument gelieferten Datum.
Beispiel 2 – Andere Datumseinheiten
Sie können die Einheiten in Tagen, Wochen, Monaten, Jahren usw. angeben. Hier sind einige Beispiele.
SELECT '2020-10-01' AS 'Start Date', DATE_ADD('2020-10-01', INTERVAL 2 WEEK) AS '+2 Weeks', DATE_ADD('2020-10-01', INTERVAL 2 MONTH) AS '+2 Months', DATE_ADD('2020-10-01', INTERVAL 2 QUARTER) AS '+2 Quarters', DATE_ADD('2020-10-01', INTERVAL 2 YEAR) AS '+2 Years';
Ergebnis:
+------------+------------+------------+-------------+------------+ | Start Date | +2 Weeks | +2 Months | +2 Quarters | +2 Years | +------------+------------+------------+-------------+------------+ | 2020-10-01 | 2020-10-15 | 2020-12-01 | 2021-04-01 | 2022-10-01 | +------------+------------+------------+-------------+------------+
Beispiel 3 – Zeiteinheiten
Sie können einem Datums-/Uhrzeitwert auch Zeiteinheiten hinzufügen. Hier ist ein Beispiel.
SELECT DATE_ADD('2020-10-01 01:00:00', INTERVAL 10 HOUR) AS Result;
Ergebnis:
+---------------------+ | Result | +---------------------+ | 2020-10-01 11:00:00 | +---------------------+
Und Sie können mehrere Einheiten gleichzeitig angeben. Sie können beispielsweise Stunden und Minuten angeben. So.
SELECT DATE_ADD('2020-10-01 01:00:00', INTERVAL '1:30' HOUR_MINUTE) AS Result;
Ergebnis:
+---------------------+ | Result | +---------------------+ | 2020-10-01 02:30:00 | +---------------------+
Erwartete Werte
Die folgende Tabelle zeigt die gültigen Einheitenwerte und ihr erwartetes Format.
unit Wert | Erwarteter expr Formatieren |
---|---|
Mikrosekunde | MIKROSEKUNDEN |
ZWEITE | SEKUNDEN |
MINUTE | MINUTEN |
STUNDE | STUNDEN |
TAG | TAGE |
WOCHE | WOCHEN |
MONAT | MONATE |
QUARTAL | VIERTEL |
JAHR | JAHRE |
SECOND_MICROSECOND | ‘SEKUNDEN.MIKROSEKUNDEN’ |
MINUTE_MICROSECOND | ‘MINUTEN:SEKUNDEN.MIKROSEKUNDEN’ |
MINUTE_SECOND | ‘MINUTEN:SEKUNDEN’ |
HOUR_MICROSECOND | ‘STUNDEN:MINUTEN:SEKUNDEN.MIKROSEKUNDEN’ |
HOUR_SECOND | ‘STUNDEN:MINUTEN:SEKUNDEN’ |
HOUR_MINUTE | ‘STUNDEN:MINUTEN’ |
DAY_MICROSECOND | ‘TAGE STUNDEN:MINUTEN:SEKUNDEN.MIKROSEKUNDEN’ |
DAY_SECOND | ‘TAGE STUNDEN:MINUTEN:SEKUNDEN’ |
DAY_MINUTE | ‘TAGE STUNDEN:MINUTEN’ |
DAY_HOUR | „TAGE STUNDEN“ |
JAHR_MONAT | „JAHRE-MONATE“ |
Sie können auch das ADDDATE()
verwenden Funktion, um dasselbe zu tun (es ist ein Synonym für DATE_ADD()
Funktion bei Verwendung derselben Syntax). Außerdem die Syntax von ADDDATE()
hat eine zweite Form, bei der es sich um eine verkürzte Methode zum Hinzufügen einer bestimmten Anzahl von Tagen zu einem Datum handelt. Weitere Informationen finden Sie unter ADDDATE()-Beispiele in MySQL.