Problem:
Chcesz dodać dni do daty w bazie danych MySQL.
Przykład:
Nasza baza danych zawiera tabelę o nazwie trip z danymi w kolumnach id , city i start_date .
| id | miasto | data_początkowa |
|---|---|---|
| 1 | Chicago | 22-06-2019 |
| 2 | Huston | 2019-07-15 |
| 3 | Dalle | 2019-08-30 |
| 4 | Austin | 23-09-2019 |
Dodajmy dwa dni do dat rozpoczęcia i uzyskajmy miasta podróży z nowymi datami rozpoczęcia.
Rozwiązanie:
Użyjemy DATE_ADD() funkcjonować. Oto zapytanie, które napiszesz:
SELECT city,
DATE_ADD(start_date, INTERVAL 2 DAY)
AS later_date
FROM trip;
Oto wynik zapytania:
| miasto | data_początkowa |
|---|---|
| Chicago | 2019-06-24 |
| Huston | 2019-07-17 |
| Dalle | 2019-09-01 |
| Austin | 2019-09-25 |
Dyskusja:
Użyj DATE_ADD() funkcja, jeśli chcesz zwiększyć podaną datę w bazie danych MySQL. W naszym przykładzie zwiększyliśmy każdą datę rozpoczęcia o dwa dni.
Ta funkcja przyjmuje dwa argumenty. Pierwszy argument to data lub data i godzina, którą chcesz zmienić. Ten argument może być nazwą kolumny daty/daty/godziny lub wyrażeniem zwracającym wartość daty/daty/godziny. W naszym przykładzie użyliśmy start_date kolumna, która ma typ danych data.
Drugim argumentem jest operator INTERVAL, po którym następuje liczba całkowita wskazująca liczbę jednostek (w naszym przykładzie 2) oraz jednostkę daty/czasu do dodania (w naszym przykładzie DAY). Więcej informacji na temat jednostek interwału można znaleźć w sekcji Wyrażenie interwału i argumenty jednostek w dokumentacji MySQL.
DATE_ADD() zwraca nową wartość daty lub daty i godziny. W naszym przykładzie podróż do Houston ma nową datę rozpoczęcia:‘2019-07-17’.