Problém:
Chcete získat datum ze sloupce data a času v databázi MySQL.
Příklad:
Naše databáze obsahuje tabulku s názvem travel
s údaji ve sloupcích id
, first_name
, last_name
a timestamp_of_booking
.
id | first_name | last_name | timestamp_of_booking |
---|---|---|---|
1 | Lisa | Watson | 20.04.2019 14:15:34 |
2 | Tome | Smith | 2019-03-31 20:10:14 |
3 | Andy | Markusi | 2019-08-03 10:05:45 |
4 | Alice | Hnědá | 2019-07-01 12:47:54 |
U každého cestovatele získáme jeho jméno a příjmení a pouze datum rezervace . (Poznámka:timestamp_of_booking
sloupec obsahuje údaje o datu i čase.)
Řešení:
Použijeme DATE()
funkce. Zde je dotaz, který byste napsali:
SELECT first_name, last_name, DATE(timestamp_of_booking) AS date_of_booking FROM travel;
Zde je výsledek dotazu:
first_name | last_name | date_of_booking |
---|---|---|
Lisa | Watson | 20. 4. 2019 |
Tome | Smith | 2019-03-31 |
Andy | Markusi | 2019-08-03 |
Alice | Hnědá | 2019-07-01 |
Diskuse:
V MySQL použijte funkci DATE() k načtení data z hodnoty datetime nebo timestamp. Tato funkce přebírá pouze jeden argument – buď výraz, který vrací hodnotu datum/datum/čas/časové razítko nebo název sloupce časové razítko/datum a čas. (V našem příkladu používáme sloupec časové razítko datový typ.)
Funkce DATE() vrací pouze informace o datu. V našem příkladu vrátí „2019-03-31“ pro Tom Smith's datum rezervace. Upozorňujeme, že informace o čase nejsou zahrnuty.