sql >> Databáze >  >> RDS >> MariaDB

MariaDB CURRENT_DATE() Vysvětleno

V MariaDB, CURRENT_DATECURRENT_DATE() jsou synonyma pro CURDATE() .

CURDATE() funkce je vestavěná funkce data a času, která vrací aktuální datum.

Datum je vráceno buď ve formátu 'YYYY-MM-DD' nebo YYYYMMDD , v závislosti na tom, zda je funkce používána v řetězcovém nebo číselném kontextu.

Syntaxe

Syntaxe vypadá takto:

CURRENT_DATE
CURRENT_DATE()

Nejsou vyžadovány ani přijímány žádné argumenty.

Alternativně můžete zavolat CURDATE() takhle:

CURDATE()

Příklad

Zde je příklad:

SELECT 
    CURRENT_DATE,
    CURRENT_DATE(),
    CURDATE();

Výsledek:

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

Vidíme, že všechny tři vrátí stejný výsledek.

Číselný kontext

Při použití v číselném kontextu je výsledné datum v YYYYMMDD formát.

Příklad:

SELECT 
    CURRENT_DATE + 0,
    CURRENT_DATE() + 0;

Výsledek:

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

Přidání k aktuálnímu datu

Existuje mnoho způsobů, jak provádět aritmetiku dat v MariaDB. Tyto metody můžete použít k přidání počtu dní, týdnů, měsíců nebo let k aktuálnímu datu.

Zde je příklad použití operátoru sčítání (+ ), chcete-li k datu přidat 10 dní:

SELECT 
    CURRENT_DATE,
    CURRENT_DATE() + INTERVAL 10 DAY;

Výsledek:

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

Viz také funkce jako DATE_ADD() a ADDDATE() pro alternativní způsob přidání k aktuálnímu datu.

Odečítání od aktuálního data

Zde je příklad použití operátoru odčítání (- ) pro odečtení 10 dnů od aktuálního data:

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

Výsledek:

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

Viz funkce jako DATE_SUB() a SUBDATE() pro alternativní způsob přidání k aktuálnímu datu.

Žádné argumenty

Žádné argumenty nejsou přijímány. Zde je to, co se stane, když projdeme hádkou:

SELECT CURRENT_DATE(1);

Výsledek:

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. Vytvoření sha1-hash řádku v Oracle

  2. drahokam mysql2 zkompilován pro špatnou klientskou knihovnu mysql

  3. Kompletní průvodce opravou chyby SQL Database 5243

  4. Jaký je ekvivalent pro LISTAGG (databáze Oracle) v PostgreSQL?