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