Problém:
Chcete přidat dny k datu v databázi MySQL.
Příklad:
Naše databáze obsahuje tabulku s názvem trip
s údaji ve sloupcích id
, city
a start_date
.
id | město | počáteční_datum |
---|---|---|
1 | Chicago | 22. 6. 2019 |
2 | Houston | 2019-07-15 |
3 | Dallas | 2019-08-30 |
4 | Austin | 23. 9. 2019 |
Přidejme k datům zahájení dva dny a získáme města výletů s novými daty zahájení.
Řešení:
Použijeme DATE_ADD()
funkce. Zde je dotaz, který byste napsali:
SELECT city, DATE_ADD(start_date, INTERVAL 2 DAY) AS later_date FROM trip;
Zde je výsledek dotazu:
city | počáteční_datum |
---|---|
Chicago | 24. 6. 2019 |
Houston | 2019-07-17 |
Dallas | 2019-09-01 |
Austin | 25. 9. 2019 |
Diskuse:
Použijte DATE_ADD()
Pokud chcete zvýšit dané datum v databázi MySQL. V našem příkladu jsme zvýšili každé počáteční datum o dva dny.
Tato funkce má dva argumenty. První argument je datum nebo datum a čas, který chcete změnit. Tento argument může být název sloupce datum/datum a čas nebo výraz vracející hodnotu datum/datum a čas. V našem příkladu jsme použili start_date
sloupec, který je datového typu datum.
Druhým argumentem je operátor INTERVAL následovaný celým číslem udávajícím počet jednotek (v našem příkladu 2) a jednotku data/času, kterou je třeba přidat (v našem příkladu DAY). Více o intervalových jednotkách můžete najít v sekci Intervalový výraz a argumenty jednotek v dokumentaci MySQL.
DATE_ADD()
vrátí novou hodnotu data nebo data a času. V našem příkladu cesta do Houstonu má nové datum zahájení:„2019-07-17“.