sql >> Database >  >> RDS >> Mysql

DATE_ADD() Voorbeelden – MySQL

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.


  1. Handtekening opslaan in MySQL

  2. Zoek een woordgroep die eindigt op een voorvoegsel met zoeken in volledige tekst

  3. Hoe verwijder ik uitgebreide ASCII-tekens uit een tekenreeks in T-SQL?

  4. Een API aanroepen vanuit de opgeslagen procedure van SQL Server