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