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

Jak CURDATE() funguje v MariaDB

V MariaDB, CURDATE() 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:

CURDATE()

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

Má také následující synonyma:

CURRENT_DATE
CURRENT_DATE()

Příklad

Zde je příklad:

SELECT CURDATE();

Výsledek:

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

Číselný kontext

Když CURDATE() se používá v číselném kontextu, výsledné datum je v YYYYMMDD formát.

Příklad:

SELECT CURDATE() + 0;

Výsledek:

+---------------+
| CURDATE() + 0 |
+---------------+
|      20210508 |
+---------------+

Synonyma

CURRENT_DATE a CURRENT_DATE() jsou synonyma pro CURDATE() . Proto můžeme použít kterýkoli z nich k získání stejného výsledku.

Příklad

SELECT 
    CURDATE(),
    CURRENT_DATE,
    CURRENT_DATE();

Výsledek:

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

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í (+ ) pro přidání 6 měsíců k datu:

SELECT 
    CURDATE(),
    CURDATE() + INTERVAL 6 MONTH;

Výsledek:

+------------+------------------------------+
| CURDATE()  | CURDATE() + INTERVAL 6 MONTH |
+------------+------------------------------+
| 2021-05-08 | 2021-11-08                   |
+------------+------------------------------+

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í 6 měsíců od aktuálního data:

SELECT 
    CURDATE(),
    CURDATE() - INTERVAL 6 MONTH;

Výsledek:

+------------+------------------------------+
| CURDATE()  | CURDATE() + INTERVAL 6 MONTH |
+------------+------------------------------+
| 2021-05-08 | 2021-11-08                   |
+------------+------------------------------+

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

Žádné argumenty

CURDATE() funkce nepřijímá žádné argumenty.

Zde je to, co se stane, když projdeme hádkou:

SELECT CURDATE(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. Jak mohu upravit velikost sloupce v tabulce MySQL?

  2. 5 důvodů, proč potřebujete dobrou databázi

  3. Posílejte a získejte zároveň v php

  4. Jak rozdělit řetězec po určitém znaku v SQL Server a aktualizovat tuto hodnotu na konkrétní sloupec