I MariaDB, CURDATE()
är en inbyggd datum- och tidsfunktion som returnerar det aktuella datumet.
Datumet returneras i antingen 'YYYY-MM-DD'
eller YYYYMMDD
, beroende på om funktionen används i en sträng eller numerisk kontext.
Syntax
Syntaxen ser ut så här:
CURDATE()
Inga argument krävs eller accepteras.
Den har också följande synonymer:
CURRENT_DATE
CURRENT_DATE()
Exempel
Här är ett exempel:
SELECT CURDATE();
Resultat:
+------------+ | CURDATE() | +------------+ | 2021-05-08 | +------------+
Numerisk kontext
När CURDATE()
används i ett numeriskt sammanhang, är det resulterande datumet i YYYYMMDD
format.
Exempel:
SELECT CURDATE() + 0;
Resultat:
+---------------+ | CURDATE() + 0 | +---------------+ | 20210508 | +---------------+
Synonymer
CURRENT_DATE
och CURRENT_DATE()
är synonymer till CURDATE()
. Därför kan vi använda båda för att få samma resultat.
Exempel
SELECT
CURDATE(),
CURRENT_DATE,
CURRENT_DATE();
Resultat:
+------------+--------------+----------------+ | CURDATE() | CURRENT_DATE | CURRENT_DATE() | +------------+--------------+----------------+ | 2021-05-08 | 2021-05-08 | 2021-05-08 | +------------+--------------+----------------+
Lägger till det aktuella datumet
Det finns många sätt att utföra aritmetik på datum i MariaDB. Du kan använda sådana metoder för att lägga till ett antal dagar, veckor, månader eller år till det aktuella datumet.
Här är ett exempel på hur man använder additionsoperatorn (+
) för att lägga till 6 månader till datumet:
SELECT
CURDATE(),
CURDATE() + INTERVAL 6 MONTH;
Resultat:
+------------+------------------------------+ | CURDATE() | CURDATE() + INTERVAL 6 MONTH | +------------+------------------------------+ | 2021-05-08 | 2021-11-08 | +------------+------------------------------+
Se även funktioner som DATE_ADD()
och ADDDATE()
för ett alternativt sätt att lägga till det aktuella datumet.
Att dra av från det aktuella datumet
Här är ett exempel på användning av subtraktionsoperatorn (-
) för att subtrahera 6 månader från det aktuella datumet:
SELECT
CURDATE(),
CURDATE() - INTERVAL 6 MONTH;
Resultat:
+------------+------------------------------+ | CURDATE() | CURDATE() + INTERVAL 6 MONTH | +------------+------------------------------+ | 2021-05-08 | 2021-11-08 | +------------+------------------------------+
Se funktioner som DATE_SUB()
och SUBDATE()
för ett alternativt sätt att lägga till det aktuella datumet.
Inga argument
CURDATE()
funktion accepterar inga argument.
Så här händer när vi klarar ett argument:
SELECT CURDATE(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