В MariaDB, LOCALTIME и LOCALTIME() са синоними на NOW() .
NOW() функцията е вградена функция за дата и час, която връща текущата дата и час.
Времето се връща в 'YYYY-MM-DD HH:MM:SS' или YYYYMMDDHHMMSS.uuuuuu формат, в зависимост от това дали функцията се използва в низов или числов контекст.
Синтаксис
LOCALTIME() може да се използва по следните начини:
LOCALTIME
LOCALTIME([precision])
Където precision е микросекундната точност.
Като алтернатива можете да извикате NOW() така:
NOW([precision]) Пример
Ето един пример:
SELECT
LOCALTIME,
LOCALTIME(),
NOW(); Резултат:
+---------------------+---------------------+---------------------+ | LOCALTIME | LOCALTIME() | NOW() | +---------------------+---------------------+---------------------+ | 2021-05-10 09:06:38 | 2021-05-10 09:06:38 | 2021-05-10 09:06:38 | +---------------------+---------------------+---------------------+
Можем да видим, че и трите връщат един и същ резултат.
Числов контекст
Когато се използва в числов контекст, полученото време е в YYYYMMDDHHMMSS.uuuuuu формат.
Пример:
SELECT
LOCALTIME,
LOCALTIME + 0,
LOCALTIME() + 0; Резултат:
+---------------------+----------------+-----------------+ | LOCALTIME | LOCALTIME + 0 | LOCALTIME() + 0 | +---------------------+----------------+-----------------+ | 2021-05-10 09:06:54 | 20210510090654 | 20210510090654 | +---------------------+----------------+-----------------+
Прецизност
Когато се използва с LOCALTIME([precision]) синтаксис, можете да посочите микросекундната точност за резултата.
Пример:
SELECT
LOCALTIME(6),
LOCALTIME(6) + 0; Резултат:
+----------------------------+-----------------------+ | LOCALTIME(6) | LOCALTIME(6) + 0 | +----------------------------+-----------------------+ | 2021-05-10 09:07:09.717031 | 20210510090709.717031 | +----------------------------+-----------------------+
Максималната стойност за микросекундната точност е 6. Ето какво се случва, когато се предаде по-голямо число за точността:
SELECT LOCALTIME(7); Резултат:
ERROR 1426 (42000): Too big precision 7 specified for 'current_timestamp'. Maximum is 6
Добавяне към текущата времева марка
Има много начини за извършване на аритметика на стойности за дата и час в MariaDB.
Ето пример за използване на оператора за добавяне (+ ), за да добавите 2 дни към датата:
SELECT
LOCALTIME,
LOCALTIME + INTERVAL 2 DAY; Резултат:
+---------------------+----------------------------+ | LOCALTIME | LOCALTIME + INTERVAL 2 DAY | +---------------------+----------------------------+ | 2021-05-10 09:07:42 | 2021-05-12 09:07:42 | +---------------------+----------------------------+
Вижте също функции като DATE_ADD() и ADDDATE() за алтернативен начин за добавяне към текущата дата.
Изваждане от текущата дата
Ето пример за използване на оператора за изваждане (- ), за да извадите 10 дни от текущата дата:
SELECT
LOCALTIME,
LOCALTIME - INTERVAL 10 DAY; Резултат:
+---------------------+-----------------------------+ | LOCALTIME | LOCALTIME - INTERVAL 10 DAY | +---------------------+-----------------------------+ | 2021-05-10 09:07:58 | 2021-04-30 09:07:58 | +---------------------+-----------------------------+
Вижте функции като DATE_SUB() и SUBDATE() за алтернативен начин за изваждане от текущата дата.