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