sql >> Databasteknik >  >> RDS >> MariaDB

Hur DATE() fungerar i MariaDB

I MariaDB, DATE() är en inbyggd datum- och tidsfunktion som extraherar datumdelen av ett datum- eller datetime-uttryck.

Du skickar uttrycket datum/datumtid som ett argument när du anropar funktionen.

Syntax

Syntaxen ser ut så här:

DATE(expr)

Där expr är ett uttryck för datum/datumtid.

Exempel

Här är ett exempel:

SELECT DATE('2057-08-25 18:00:10');

Resultat:

+-----------------------------+
| DATE('2057-08-25 18:00:10') |
+-----------------------------+
| 2057-08-25                  |
+-----------------------------+

Här är den med bara datumuttrycket:

SELECT DATE('2057-08-25');

Resultat:

+--------------------+
| DATE('2057-08-25') |
+--------------------+
| 2057-08-25         |
+--------------------+

Aktuellt datum

Här returnerar vi det aktuella datumet genom att skicka NOW() som argument:

SELECT
    NOW(),
    DATE(NOW());

Resultat:

+---------------------+-------------+
| NOW()               | DATE(NOW()) |
+---------------------+-------------+
| 2021-05-10 09:26:32 | 2021-05-10  |
+---------------------+-------------+

Ogiltigt argument

När ett ogiltigt argument skickades, DATE() returnerar null :

SELECT DATE('Homer Simpson');

Resultat:

+-----------------------+
| DATE('Homer Simpson') |
+-----------------------+
| NULL                  |
+-----------------------+

Även om, fram till MariaDB 5.5.32, returnerade vissa versioner av MariaDB 0000-00-00 när ett ogiltigt datum passerat.

Argument saknas

Ringer DATE() utan att skicka ett argument resulterar det i ett fel:

SELECT DATE();

Resultat:

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

  1. Guide för CTE i SQL Server

  2. MariaDB numeriska funktioner (fullständig lista)

  3. Använda Oracle JDeveloper 12c med Oracle Database 12c på Oracle Cloud Platform, del 1

  4. Oracle DateTime i Where-klausul?