Probleem:
U wilt dagen toevoegen aan een datum in een MySQL-database.
Voorbeeld:
Onze database heeft een tabel met de naam trip
met gegevens in de kolommen id
, city
, en start_date
.
id | stad | startdatum |
---|---|---|
1 | Chicago | 2019-06-22 |
2 | Houston | 2019-07-15 |
3 | Dallas | 2019-08-30 |
4 | Austin | 23-09-2019 |
Laten we twee dagen toevoegen aan de startdatums en de reissteden krijgen met de nieuwe startdatums.
Oplossing:
We gebruiken de DATE_ADD()
functie. Dit is de vraag die je zou schrijven:
SELECT city, DATE_ADD(start_date, INTERVAL 2 DAY) AS later_date FROM trip;
Dit is het resultaat van de zoekopdracht:
stad | startdatum |
---|---|
Chicago | 2019-06-24 |
Houston | 2019-07-17 |
Dallas | 2019-09-01 |
Austin | 25-09-2019 |
Discussie:
Gebruik de DATE_ADD()
functie als u een bepaalde datum in een MySQL-database wilt verhogen. In ons voorbeeld hebben we elke startdatum met twee dagen verhoogd.
Deze functie heeft twee argumenten. Het eerste argument is de datum of datetime die u wilt wijzigen. Dit argument kan de naam zijn van een datum/datum/tijd-kolom of een expressie die een datum/datum/tijd-waarde retourneert. In ons voorbeeld gebruikten we de start_date
kolom, die van het gegevenstype datum is.
Het tweede argument is de INTERVAL-operator gevolgd door een geheel getal dat het aantal eenheden aangeeft (in ons voorbeeld 2) en de datum/tijd-eenheid die moet worden toegevoegd (in ons voorbeeld DAG). U kunt meer vinden over intervaleenheden in de sectie Intervalexpressie en eenheidsargumenten van de MySQL-documentatie.
DATE_ADD()
retourneert een nieuwe datum of datetime-waarde. In ons voorbeeld, de reis naar Houston heeft een nieuwe startdatum:‘2019-07-17’.