CURRENT_TIMESTAMP (Transact-SQL)
Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure конечной точке аналитики платформы Аналитики Azure Synapse Analytics (PDW) в Microsoft Fabric Хранилище в Microsoft Fabric
Эта функция возвращает текущую системную метку времени базы данных в виде значения datetime без смещения часового пояса базы данных. CURRENT_TIMESTAMP
получает это значение от операционной системы компьютера, на котором выполняется экземпляр SQL Server.
Примечание.
SYSDATETIME
и SYSUTCDATE
имеют большую точность в долях секунды, чем GETDATE
и GETUTCDATE
. Функция SYSDATETIMEOFFSET
включает смещение часового пояса, заданное в системе. Функции SYSDATETIME
, SYSUTCDATETIME
и SYSDATETIMEOFFSET
могут быть присвоены переменным любого типа даты и времени.
Эта функция ANSI SQL эквивалентна функции GETDATE.
Обзор всех типов данных и функций даты и времени в языке Transact-SQL см. в статье Типы данных и функции даты и времени.
Соглашения о синтаксисе Transact-SQL
Синтаксис
CURRENT_TIMESTAMP
Аргументы
Эта функция не имеет аргументов.
Тип возвращаемых данных
datetime
Замечания
Функция CURRENT_TIMESTAMP
может использоваться в инструкциях Transact-SQL везде, где допустимо использование выражения datetime.
CURRENT_TIMESTAMP
является недетерминированной функцией. Невозможно проиндексировать представления и выражения, ссылающиеся на этот столбец.
Примеры
В этих примерах используются шесть системных функций SQL Server, возвращающих текущие значения даты и времени, для возврата даты, времени или обоих. Значения возвращаются последовательно, поэтому могут различаться на доли секунды. Обратите внимание на то, что возвращаемые значения будут соответствовать фактическим дню и времени выполнения.
А. Получение текущих системных значений даты и времени
SELECT SYSDATETIME()
,SYSDATETIMEOFFSET()
,SYSUTCDATETIME()
,CURRENT_TIMESTAMP
,GETDATE()
,GETUTCDATE();
/* Returned:
SYSDATETIME() 2007-04-30 13:10:02.0474381
SYSDATETIMEOFFSET()2007-04-30 13:10:02.0474381 -07:00
SYSUTCDATETIME() 2007-04-30 20:10:02.0474381
CURRENT_TIMESTAMP 2007-04-30 13:10:02.047
GETDATE() 2007-04-30 13:10:02.047
GETUTCDATE() 2007-04-30 20:10:02.047
*/
B. Получение текущей системной даты
SELECT CONVERT (DATE, SYSDATETIME())
,CONVERT (DATE, SYSDATETIMEOFFSET())
,CONVERT (DATE, SYSUTCDATETIME())
,CONVERT (DATE, CURRENT_TIMESTAMP)
,CONVERT (DATE, GETDATE())
,CONVERT (DATE, GETUTCDATE());
/* Returned
SYSDATETIME() 2007-05-03
SYSDATETIMEOFFSET()2007-05-03
SYSUTCDATETIME() 2007-05-04
CURRENT_TIMESTAMP 2007-05-03
GETDATE() 2007-05-03
GETUTCDATE() 2007-05-04
*/
C. Получение текущего системного времени
SELECT CONVERT (TIME, SYSDATETIME())
,CONVERT (TIME, SYSDATETIMEOFFSET())
,CONVERT (TIME, SYSUTCDATETIME())
,CONVERT (TIME, CURRENT_TIMESTAMP)
,CONVERT (TIME, GETDATE())
,CONVERT (TIME, GETUTCDATE());
/* Returned
SYSDATETIME() 13:18:45.3490361
SYSDATETIMEOFFSET()13:18:45.3490361
SYSUTCDATETIME() 20:18:45.3490361
CURRENT_TIMESTAMP 13:18:45.3470000
GETDATE() 13:18:45.3470000
GETUTCDATE() 20:18:45.3470000
*/
Примеры: Azure Synapse Analytics и система платформы аналитики (PDW)
SELECT CURRENT_TIMESTAMP;