sql >> Database >  >> RDS >> Mysql

Dagen aan een datum toevoegen in MySQL

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’.


  1. Google BigQuery ODBC-stuurprogramma

  2. Wat is de maximale grootte voor een varchar2 PL/SQL-subprogrammaargument in Oracle?

  3. bestellen op newid() - hoe werkt het?

  4. Hoe kan ik de eerste dag van een maand in SQL selecteren?