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.