W MariaDB, DATE()
to wbudowana funkcja daty i czasu, która wyodrębnia część daty z wyrażenia daty lub czasu.
Podczas wywoływania funkcji przekazujesz wyrażenie data/data/godzina jako argument.
Składnia
Składnia wygląda tak:
DATE(expr)
Gdzie expr
jest wyrażeniem daty/daty/godziny.
Przykład
Oto przykład:
SELECT DATE('2057-08-25 18:00:10');
Wynik:
+-----------------------------+ | DATE('2057-08-25 18:00:10') | +-----------------------------+ | 2057-08-25 | +-----------------------------+
Oto tylko wyrażenie daty:
SELECT DATE('2057-08-25');
Wynik:
+--------------------+ | DATE('2057-08-25') | +--------------------+ | 2057-08-25 | +--------------------+
Aktualna data
Tutaj zwracamy bieżącą datę, przekazując NOW()
jako argument:
SELECT
NOW(),
DATE(NOW());
Wynik:
+---------------------+-------------+ | NOW() | DATE(NOW()) | +---------------------+-------------+ | 2021-05-10 09:26:32 | 2021-05-10 | +---------------------+-------------+
Nieprawidłowy argument
Po przekazaniu nieprawidłowego argumentu DATE()
zwraca null
:
SELECT DATE('Homer Simpson');
Wynik:
+-----------------------+ | DATE('Homer Simpson') | +-----------------------+ | NULL | +-----------------------+
Chociaż do MariaDB 5.5.32 niektóre wersje MariaDB zwracały 0000-00-00
kiedy minęła nieprawidłowa data.
Brakujący argument
Wywołanie DATE()
bez przekazania argumentu powoduje błąd:
SELECT DATE();
Wynik:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 1