Spec-Zone.ru › MariaDB

NOW

Синтаксис

NOW([precision])
CURRENT_TIMESTAMP
CURRENT_TIMESTAMP([precision])
LOCALTIME, LOCALTIME([precision])
LOCALTIMESTAMP
LOCALTIMESTAMP([precision])

Описание

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

Необязательный параметр precision определяет точность до микросекунд. См. Микросекунды в MariaDB.

NOW() (или его синонимы) может быть использовано в качестве значения по умолчанию для столбцов TIMESTAMP, а также, начиная с MariaDB 10.0.1, столбцов DATETIME. До MariaDB 10.0.1, это было возможно только для одного столбца TIMESTAMP на таблицу, содержащего CURRENT_TIMESTAMP в качестве значения по умолчанию.

При отображении в таблице INFORMATION_SCHEMA.COLUMNS, значение по умолчанию CURRENT TIMESTAMP отображается как CURRENT_TIMESTAMP до MariaDB 10.2.2, и как current_timestamp() начиная с MariaDB 10.2.3, благодаря поддержке MariaDB 10.2 выражений в предложении DEFAULT.

Изменение системной переменной timestamp с помощью оператора SET timestamp влияет на значение, возвращаемое функцией NOW(), но не SYSDATE().

Примеры

SELECT NOW();
+---------------------+
| NOW()               |
+---------------------+
| 2010-03-27 13:13:25 |
+---------------------+

SELECT NOW() + 0;
+-----------------------+
| NOW() + 0             |
+-----------------------+
| 20100327131329.000000 |
+-----------------------+

С точностью:

SELECT CURRENT_TIMESTAMP(2);
+------------------------+
| CURRENT_TIMESTAMP(2)   |
+------------------------+
| 2018-07-10 09:47:26.24 |
+------------------------+

Используется в качестве значения по умолчанию для TIMESTAMP:

CREATE TABLE t (createdTS TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP);

Начиная с MariaDB 10.2.2:

SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA='test'
  AND COLUMN_NAME LIKE '%ts%'\G
*************************** 1. row ***************************
           TABLE_CATALOG: def
            TABLE_SCHEMA: test
              TABLE_NAME: t
             COLUMN_NAME: ts
        ORDINAL_POSITION: 1
          COLUMN_DEFAULT: current_timestamp()
...

<= MariaDB 10.2.1

SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA='test'
  AND COLUMN_NAME LIKE '%ts%'\G
*************************** 1. row ***************************
           TABLE_CATALOG: def
            TABLE_SCHEMA: test
              TABLE_NAME: t
             COLUMN_NAME: createdTS
        ORDINAL_POSITION: 1
          COLUMN_DEFAULT: CURRENT_TIMESTAMP
...

См. также

  • Микросекунды в MariaDB
  • системная переменная timestamp
Содержимое, воспроизведенное на этом сайте, является собственностью соответствующих владельцев, и это содержание не предварительно проверяется MariaDB. Мнения, информация и мнения, выраженные в этом содержании, не обязательно отражают точку зрения MariaDB или любой другой стороны.

© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/now/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API