Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Base de Dados SQL do Azure
Instância Gerida do Azure SQL
Azure Synapse Analytics
Sistema de Plataforma de Análise (PDW)
Ponto de Extremidade de Análise SQL no Microsoft Fabric
Armazém no Microsoft Fabric
Base de Dados SQL no Microsoft Fabric
Devolve um valor datetime2(7) que contém a data e hora do computador onde a instância do SQL Server está a correr.
Observação
SYSDATETIME e SYSUTCDATETIME têm mais precisão em frações de segundo do que GETDATE e GETUTCDATE. O SYSDATETIMEOFFSET inclui o deslocamento do fuso horário do sistema. SYSDATETIME, SYSUTCDATETIME e SYSDATETIMEOFFSET podem ser atribuídos a uma variável de qualquer um dos tipos de data e hora.
Azure SQL Database (com exceção do Azure SQL Managed Instance) e Azure Synapse Analytics seguem o UTC. Use AT TIME ZONE no Azure SQL Database ou Azure Synapse Analytics se precisar de interpretar informações de data e hora num fuso horário que não seja UTC.
Para obter uma visão geral de todos os tipos e funções de dados de data e hora Transact-SQL, consulte Tipos de dados e funções de data e hora (Transact-SQL).
Transact-SQL convenções de sintaxe
Sintaxe
SYSDATETIME ( )
Tipo de Retorno
datetime2(7)
Observações
As instruções Transact-SQL podem referir-se a SYSDATETIME em qualquer lugar onde possam referir-se a uma expressão datetime2(7 ).
SYSDATETIME é uma função não determinística. Vistas e expressões que referenciam esta função numa coluna não podem ser indexadas.
Observação
O SQL Server obtém os valores de data e hora utilizando a API GetSystemTimeAsFileTime() do Windows. A precisão depende do hardware do computador e da versão do Windows na qual a instância do SQL Server está sendo executada. A precisão desta API é fixada em 100 nanossegundos. A precisão pode ser determinada utilizando a API GetSystemTimeAdjustment() do Windows.
Examples
Os exemplos seguintes usam as seis funções do sistema SQL Server que retornam a data e hora atuais para devolver a data, hora ou ambas. Os valores são retornados em série; portanto, seus segundos fracionários podem ser diferentes.
A. Obtenção da data e hora atuais do sistema
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. Obtenção da data atual do sistema
SELECT CONVERT (date, SYSDATETIME())
,CONVERT (date, SYSDATETIMEOFFSET())
,CONVERT (date, SYSUTCDATETIME())
,CONVERT (date, CURRENT_TIMESTAMP)
,CONVERT (date, GETDATE())
,CONVERT (date, GETUTCDATE());
/* All returned 2007-04-30 */
C. Obter a hora atual do sistema
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
*/
Exemplos: Azure Synapse Analytics and Analytics Platform System (PDW)
D: Obter a data e hora atuais do sistema
SELECT SYSDATETIME();
Aqui está o conjunto de resultados.
--------------------------
7/20/2013 2:49:59 PM
Ver também
CAST e CONVERT (Transact-SQL)
Data e Hora Tipos de Dados e Funções (Transact-SQL)