sql >> Database teknologi >  >> RDS >> MariaDB

MariaDB CURRENT_DATE() Forklaret

I MariaDB, CURRENT_DATE og CURRENT_DATE() er synonymer for CURDATE() .

CURDATE() funktion er en indbygget dato- og tidsfunktion, der returnerer den aktuelle dato.

Datoen returneres i enten 'YYYY-MM-DD' eller YYYYMMDD , afhængigt af om funktionen bruges i en streng eller numerisk kontekst.

Syntaks

Syntaksen ser sådan ud:

CURRENT_DATE
CURRENT_DATE()

Ingen argumenter er påkrævet eller accepteret.

Du kan alternativt kalde CURDATE() sådan her:

CURDATE()

Eksempel

Her er et eksempel:

SELECT 
    CURRENT_DATE,
    CURRENT_DATE(),
    CURDATE();

Resultat:

+--------------+----------------+------------+
| CURRENT_DATE | CURRENT_DATE() | CURDATE()  |
+--------------+----------------+------------+
| 2021-05-08   | 2021-05-08     | 2021-05-08 |
+--------------+----------------+------------+

Vi kan se, at alle tre giver det samme resultat.

Numerisk kontekst

Når den bruges i en numerisk kontekst, er den resulterende dato i YYYYMMDD format.

Eksempel:

SELECT 
    CURRENT_DATE + 0,
    CURRENT_DATE() + 0;

Resultat:

+------------------+--------------------+
| CURRENT_DATE + 0 | CURRENT_DATE() + 0 |
+------------------+--------------------+
|         20210508 |           20210508 |
+------------------+--------------------+

Tilføjelse til den aktuelle dato

Der er mange måder at udføre aritmetik på datoer i MariaDB. Du kan bruge sådanne metoder til at tilføje et antal dage, uger, måneder eller år til den aktuelle dato.

Her er et eksempel på brug af additionsoperatoren (+ ) for at tilføje 10 dage til datoen:

SELECT 
    CURRENT_DATE,
    CURRENT_DATE() + INTERVAL 10 DAY;

Resultat:

+--------------+----------------------------------+
| CURRENT_DATE | CURRENT_DATE() + INTERVAL 10 DAY |
+--------------+----------------------------------+
| 2021-05-08   | 2021-05-18                       |
+--------------+----------------------------------+

Se også funktioner som DATE_ADD() og ADDDATE() for en alternativ måde at tilføje til den aktuelle dato.

Trækker fra den aktuelle dato

Her er et eksempel på brug af subtraktionsoperatoren (- ) for at trække 10 dage fra den aktuelle dato:

SELECT 
    CURRENT_DATE(),
    CURRENT_DATE() - INTERVAL 10 DAY;

Resultat:

+----------------+----------------------------------+
| CURRENT_DATE() | CURRENT_DATE() - INTERVAL 10 DAY |
+----------------+----------------------------------+
| 2021-05-08     | 2021-04-28                       |
+----------------+----------------------------------+

Se funktioner som DATE_SUB() og SUBDATE() for en alternativ måde at tilføje til den aktuelle dato.

Ingen argumenter

Ingen argumenter accepteres. Her er, hvad der sker, når vi sender et argument:

SELECT CURRENT_DATE(1);

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 '1)' at line 1

  1. Sjovt med (columnstore) komprimering på et meget stort bord – del 1

  2. Almindelige SQL Server-uheld

  3. Sådan konverteres streng til tidsstempel uden tidszone

  4. Neo4j - Valg af data med MATCH ved hjælp af Cypher