In MySQL kunt u de DATE_ADD()
. gebruiken functie om een bepaalde hoeveelheid tijd aan een datum toe te voegen. U kunt het bijvoorbeeld gebruiken om 5 dagen toe te voegen aan een bepaalde datum. U kunt aangeven of u dagen, weken, maanden, kwartalen, jaren, enz. wilt toevoegen. U kunt ook een tijdwaarde toevoegen, zoals seconden, microseconden, enz.
Dit artikel bevat voorbeelden die laten zien hoe de DATE_ADD()
functie werkt.
Syntaxis
De syntaxis gaat als volgt:
DATE_ADD(date,INTERVAL expr unit)
Voorbeeld 1 – Basisgebruik
Hier is een gebruiksvoorbeeld.
SELECT DATE_ADD('2020-10-01', INTERVAL 20 DAY) AS Result;
Resultaat:
+------------+ | Result | +------------+ | 2020-10-21 | +------------+
Dit voorbeeld telt 20 dagen op bij de datum die door het eerste argument wordt geleverd.
Voorbeeld 2 – Andere datumeenheden
U kunt de eenheden specificeren in dagen, weken, maanden, jaren, enz. Hier zijn enkele voorbeelden.
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';
Resultaat:
+------------+------------+------------+-------------+------------+ | 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 | +------------+------------+------------+-------------+------------+
Voorbeeld 3 – Tijdseenheden
U kunt ook tijdseenheden toevoegen aan een datum/tijd-waarde. Hier is een voorbeeld.
SELECT DATE_ADD('2020-10-01 01:00:00', INTERVAL 10 HOUR) AS Result;
Resultaat:
+---------------------+ | Result | +---------------------+ | 2020-10-01 11:00:00 | +---------------------+
En u kunt meerdere eenheden tegelijk specificeren. U kunt bijvoorbeeld uren en minuten opgeven. Vind dit leuk.
SELECT DATE_ADD('2020-10-01 01:00:00', INTERVAL '1:30' HOUR_MINUTE) AS Result;
Resultaat:
+---------------------+ | Result | +---------------------+ | 2020-10-01 02:30:00 | +---------------------+
Verwachte waarden
De volgende tabel toont de geldige eenheidswaarden en hun verwachte formaat.
unit Waarde | Verwachte expr Formaat |
---|---|
MICROSECONDE | MICROSECONDEN |
TWEEDE | SECONDEN |
MINUUT | MINUTEN |
UUR | UUR |
DAG | DAGEN |
WEEK | WEKEN |
MAAND | MAANDEN |
KWARTAAL | KWARTAAL |
JAAR | JAAR |
SECOND_MICROSECOND | ‘SECONDEN.MICROSECONDEN’ |
MINUTE_MICROSECOND | ‘MINUTEN:SECONDEN.MICROSECONDEN’ |
MINUTE_SECOND | ‘MINUTEN:SECONDEN’ |
HOUR_MICROSECOND | ‘UUR:MINUTEN:SECONDEN.MICROSECONDEN’ |
HOUR_SECOND | ‘UUR:MINUTEN:SECONDEN’ |
HOUR_MINUTE | ‘UUR:MINUTEN’ |
DAY_MICROSECOND | ‘DAGEN UUR:MINUTEN:SECONDEN.MICROSECONDEN’ |
DAY_SECOND | ‘DAGEN UUR:MINUTEN:SECONDEN’ |
DAY_MINUTE | ‘DAGEN UUR:MINUTEN’ |
DAY_HOUR | ‘DAGEN UUR’ |
JAAR_MAAND | ‘JAAR-MAANDEN’ |
U kunt ook de ADDDATE()
. gebruiken functie om hetzelfde te doen (het is een synoniem voor de DATE_ADD()
functie bij gebruik van dezelfde syntaxis). Bovendien is de syntaxis van ADDDATE()
heeft een tweede vorm, een stenomethode om een bepaald aantal dagen aan een datum toe te voegen. Zie ADDDATE()-voorbeelden in MySQL voor meer informatie.