В MariaDB, CURDATE()
е вградена функция за дата и час, която връща текущата дата.
Датата се връща в 'YYYY-MM-DD'
или YYYYMMDD
, в зависимост от това дали функцията се използва в низов или числов контекст.
Синтаксис
Синтаксисът е така:
CURDATE()
Не се изискват или приемат аргументи.
Също така има следните синоними:
CURRENT_DATE
CURRENT_DATE()
Пример
Ето един пример:
SELECT CURDATE();
Резултат:
+------------+ | CURDATE() | +------------+ | 2021-05-08 | +------------+
Числов контекст
Когато CURDATE()
се използва в числов контекст, получената дата е в YYYYMMDD
формат.
Пример:
SELECT CURDATE() + 0;
Резултат:
+---------------+ | CURDATE() + 0 | +---------------+ | 20210508 | +---------------+
Синоними
CURRENT_DATE
и CURRENT_DATE()
са синоними на CURDATE()
. Следователно можем да използваме всеки от тях, за да получим същия резултат.
Пример
SELECT
CURDATE(),
CURRENT_DATE,
CURRENT_DATE();
Резултат:
+------------+--------------+----------------+ | CURDATE() | CURRENT_DATE | CURRENT_DATE() | +------------+--------------+----------------+ | 2021-05-08 | 2021-05-08 | 2021-05-08 | +------------+--------------+----------------+
Добавяне към текущата дата
Има много начини за извършване на аритметика на дати в MariaDB. Можете да използвате такива методи, за да добавите няколко дни, седмици, месеци или години към текущата дата.
Ето пример за използване на оператора за добавяне (+
), за да добавите 6 месеца към датата:
SELECT
CURDATE(),
CURDATE() + INTERVAL 6 MONTH;
Резултат:
+------------+------------------------------+ | CURDATE() | CURDATE() + INTERVAL 6 MONTH | +------------+------------------------------+ | 2021-05-08 | 2021-11-08 | +------------+------------------------------+
Вижте също функции като DATE_ADD()
и ADDDATE()
за алтернативен начин за добавяне към текущата дата.
Изваждане от текущата дата
Ето пример за използване на оператора за изваждане (-
), за да извадите 6 месеца от текущата дата:
SELECT
CURDATE(),
CURDATE() - INTERVAL 6 MONTH;
Резултат:
+------------+------------------------------+ | CURDATE() | CURDATE() + INTERVAL 6 MONTH | +------------+------------------------------+ | 2021-05-08 | 2021-11-08 | +------------+------------------------------+
Вижте функции като DATE_SUB()
и SUBDATE()
за алтернативен начин за добавяне към текущата дата.
Без аргументи
CURDATE()
функцията не приема никакви аргументи.
Ето какво се случва, когато предадем аргумент:
SELECT CURDATE(1);
Резултат:
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