MariaDB
 sql >> база данни >  >> RDS >> MariaDB

MariaDB CURRENT_TIMESTAMP() Обяснено

В MariaDB, CURRENT_TIMESTAMP и CURRENT_TIMESTAMP() са синоними на NOW() .

NOW() функцията е вградена функция за дата и час, която връща текущата дата и час.

Времето се връща в 'YYYY-MM-DD HH:MM:SS' или YYYYMMDDHHMMSS.uuuuuu формат, в зависимост от това дали функцията се използва в низов или числов контекст.

Синтаксис

CURRENT_TIMESTAMP() може да се използва по следните начини:

CURRENT_TIMESTAMP
CURRENT_TIMESTAMP([precision])

Където precision е микросекундната точност.

Като алтернатива можете да извикате NOW() така:

NOW([precision])

Пример

Ето един пример:

SELECT 
    CURRENT_TIMESTAMP,
    CURRENT_TIMESTAMP(),
    NOW();

Резултат:

+---------------------+---------------------+---------------------+
| CURRENT_TIMESTAMP   | CURRENT_TIMESTAMP() | NOW()               |
+---------------------+---------------------+---------------------+
| 2021-05-09 15:46:30 | 2021-05-09 15:46:30 | 2021-05-09 15:46:30 |
+---------------------+---------------------+---------------------+

Можем да видим, че и трите връщат един и същ резултат.

Числов контекст

Когато се използва в числов контекст, полученото време е в YYYYMMDDHHMMSS.uuuuuu формат.

Пример:

SELECT 
    CURRENT_TIMESTAMP,
    CURRENT_TIMESTAMP + 0,
    CURRENT_TIMESTAMP() + 0;

Резултат:

+---------------------+-----------------------+-------------------------+
| CURRENT_TIMESTAMP   | CURRENT_TIMESTAMP + 0 | CURRENT_TIMESTAMP() + 0 |
+---------------------+-----------------------+-------------------------+
| 2021-05-09 15:47:12 |        20210509154712 |          20210509154712 |
+---------------------+-----------------------+-------------------------+

Прецизност

Когато се използва с CURRENT_TIMESTAMP([precision]) синтаксис, можете да посочите микросекундната точност за резултата.

Пример:

SELECT 
    CURRENT_TIMESTAMP(6),
    CURRENT_TIMESTAMP(6) + 0;

Резултат:

+----------------------------+--------------------------+
| CURRENT_TIMESTAMP(6)       | CURRENT_TIMESTAMP(6) + 0 |
+----------------------------+--------------------------+
| 2021-05-09 15:47:39.508987 |    20210509154739.508987 |
+----------------------------+--------------------------+

Максималната стойност за микросекундната точност е 6. Ето какво се случва, когато се предаде по-голямо число за точността:

SELECT CURRENT_TIMESTAMP(7);

Резултат:

ERROR 1426 (42000): Too big precision 7 specified for 'current_timestamp'. Maximum is 6

Добавяне към текущата времева марка

Има много начини за извършване на аритметика на стойности за дата и час в MariaDB.

Ето пример за използване на оператора за добавяне (+ ), за да добавите 2 дни към датата:

SELECT 
    CURRENT_TIMESTAMP,
    CURRENT_TIMESTAMP + INTERVAL 2 DAY;

Резултат:

+---------------------+------------------------------------+
| CURRENT_TIMESTAMP   | CURRENT_TIMESTAMP + INTERVAL 2 DAY |
+---------------------+------------------------------------+
| 2021-05-09 15:49:01 | 2021-05-11 15:49:01                |
+---------------------+------------------------------------+

Вижте също функции като DATE_ADD() и ADDDATE() за алтернативен начин за добавяне към текущата дата.

Изваждане от текущата дата

Ето пример за използване на оператора за изваждане (- ), за да извадите 10 дни от текущата дата:

SELECT 
    CURRENT_TIMESTAMP,
    CURRENT_TIMESTAMP - INTERVAL 10 DAY;

Резултат:

+---------------------+-------------------------------------+
| CURRENT_TIMESTAMP   | CURRENT_TIMESTAMP - INTERVAL 10 DAY |
+---------------------+-------------------------------------+
| 2021-05-09 15:49:28 | 2021-04-29 15:49:28                 |
+---------------------+-------------------------------------+

Вижте функции като DATE_SUB() и SUBDATE() за алтернативен начин за изваждане от текущата дата.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Множество подчинени устройства за отложена репликация за аварийно възстановяване с нисък RTO

  2. Какво да търсите, ако вашата MySQL репликация изостава

  3. Как NOT REGEXP работи в MariaDB

  4. MariaDB CONNECTION_ID() Обяснено

  5. Ръководство за MariaDB Columnstore за администратори на MySQL