Używając MySQL, możesz użyć DATE() funkcja do wyodrębnienia części daty z wyrażenia daty lub czasu.
Oto jak to działa.
Składnia
Składnia wygląda tak:
DATE(expr)
Gdzie expr jest wyrażeniem daty lub daty i godziny.
Przykład 1 – Podstawowe użycie
Oto przykład demonstrujący jego podstawowe zastosowanie.
SELECT DATE('2020-10-01 12:35:06') AS 'Result';
Wynik:
+------------+ | Result | +------------+ | 2020-10-01 | +------------+
Podałem więc wartość zawierającą zarówno datę, jak i godzinę oraz DATE() funkcja zwróciła część daty tej wartości.
Przykład 2 – Używanie go z NOW()
Jeśli używasz funkcji takiej jak NOW() na przykład możesz użyć DATE() aby wyodrębnić tylko część daty z wartości zwracanej przez NOW() .
SELECT
NOW(),
DATE(NOW());
Wynik:
+---------------------+-------------+ | NOW() | DATE(NOW()) | +---------------------+-------------+ | 2018-06-25 08:33:42 | 2018-06-25 | +---------------------+-------------+
Jednak w tym przypadku mogliśmy po prostu użyć CURDATE() . W ten sposób wyeliminujesz potrzebę używania DATE() :
SELECT CURDATE();
Wynik:
+------------+ | CURDATE() | +------------+ | 2018-06-25 | +------------+
Przykład 3 – Zapytanie do bazy danych
Przez większość czasu prawdopodobnie będziesz używać tej funkcji z wartościami pobranymi z bazy danych. Takie wartości mogą być przechowywane jako data i godzina wartość i potrzebujesz tylko daty.
Oto przykład, w którym kolumna bazy danych jest przechowywana jako data-godzina wartość. Zwracam tę wartość, a także używam funkcji DATE() funkcja zwracająca część daty z tej samej wartości:
USE sakila; SELECT payment_date AS 'Date/Time', DATE(payment_date) AS 'Date' FROM payment WHERE payment_id = 1;
Wynik:
+---------------------+------------+ | Date/Time | Date | +---------------------+------------+ | 2005-05-25 11:30:37 | 2005-05-25 | +---------------------+------------+