V MariaDB DAY() je synonymem pro DAYOFMONTH() . Vrátí den v měsíci z daného data.
Přijímá jeden argument, což je datum, ze kterého chcete vrátit den v měsíci.
Výsledek je v rozsahu 1 do 31 . Pokud však datum obsahuje část nula dne (například '0000-00-00' nebo '2021-00-00' ), výsledkem je 0 .
Syntaxe
Syntaxe vypadá takto:
DAY(date)
Kde date je datum, ze kterého se má extrahovat den.
Příklad
Zde je příklad:
SELECT DAY('2045-05-18'); Výsledek:
+-------------------+| DEN('2045-05-18') |+-------------------+| 18 |+-------------------+ Hodnoty data a času
Funguje také s hodnotami datetime:
SELECT DAY('2045-05-18 01:10:15'); Výsledek:
+----------------------------+| DAY('2045-05-18 01:10:15') |+----------------------------+| 18 |+----------------------------+ Nula dnů
Zde je příklad, který používá nultý den v datu:
SELECT DAY('0000-00-00'); Výsledek:
+-------------------+| DAY('0000-00-00') |+-------------------+| 0 |+-------------------+ Číselná data
Je také možné předávat data jako číslo, pokud to dává smysl jako datum.
Příklad
SELECT DAY(20220308); Výsledek:
+----------------+| DEN(20220308) |+---------------+| 8 |+---------------+
Nebo dokonce následující (který používá dvouciferný rok):
SELECT DAY(220308); Výsledek:
+--------------+| DEN(220308) |+--------------+| 8 |+-------------+
Ale jako rande to musí dávat smysl. Když zvětším část dne na neplatný den, stane se toto:
SELECT DAY(220358); Výsledek:
+--------------+| DAY(220358) |+--------------+| NULL |+-------------+
Další oddělovače
Pro datum můžete použít jiné oddělovače. MariaDB je docela shovívavá, pokud jde o oddělovače dat. Zde je několik platných příkladů:
SELECT
DAY('2028/12/30'),
DAY('2028,12,30'),
DAY('2028:12:30'),
DAY('2028;12!30'); Výsledek (při použití vertikálního výstupu):
DAY('2028/12/30'):30DAY('2028,12,30'):30DAY('2028:12:30'):30DAY('2028;12!30'):30 Aktuální datum
Můžeme předat NOW() jako argument data pro použití aktuálního data:
SELECT
NOW(),
DAY(NOW());
Výsledek:
+---------------------+------------+| NYNÍ() | DEN(NYNÍ()) |+---------------------+------------+| 2021-05-13 09:41:03 | 13 |+---------------------+------------+
Neplatné argumenty
Při předání neplatného argumentu DAY() vrátí null :
SELECT DAY('Oops!');
Výsledek:
+---------------+| DAY('Jejda!') |+---------------+| NULL |+--------------+ Chybí argument
Volání DAY() s nesprávným počtem argumentů nebo bez předání jakýchkoli argumentů vede k chybě:
SELECT DAY();
Výsledek:
ERROR 1064 (42000):Máte chybu v syntaxi SQL; zkontrolujte příručku, která odpovídá verzi vašeho serveru MariaDB, kde najdete správnou syntaxi, která se má použít poblíž ')' na řádku 1
A další příklad:
SELECT DAY('2030-01-25', '2045-05-08');
Výsledek:
ERROR 1064 (42000):Máte chybu v syntaxi SQL; podívejte se do manuálu, který odpovídá verzi vašeho serveru MariaDB, kde najdete správnou syntaxi, která se má použít poblíž ''2045-05-08')' na řádku 1