Partilhar via


Funções de Data e Hora

O Provedor de Dados do .NET Framework para SQL Server (SqlClient) fornece funções de data e hora que executam operações em um valor de entrada System.DateTime e retornam um valor string, numérico ou System.DateTime. Essas funções estão no namespace SqlServer, que está disponível quando você usa SqlClient. A propriedade de namespace de um provedor permite que o Entity Framework descubra qual prefixo é usado por esse provedor para construções específicas, como tipos e funções. A tabela a seguir mostra as funções de data e hora do SqlClient.

Função Descrição
DATEADD(datepart, number, date) Retorna um novo DateTime valor baseado na adição de um intervalo à data especificada.

Argumentos

datepart: A String que representa a parte da data para a qual deve ser retornado um novo valor.

number: O Int32, Int64, Decimal, ou Double valor usado para incrementar datepart.

date: Uma expressão que retorna um DateTime, ou DateTimeOffset, ou Time com precisão = [0-7], ou uma cadeia de caracteres em um formato de data.

Valor de retorno

Um novo valor DateTime, DateTimeOffset ou Time com precisão = [0-7].

Exemplo

SqlServer.DATEADD('day', 22, cast('6/9/2006' as DateTime))
DATEDIFF(datepart,startdate,enddate) Devolve o número de limites de data e hora cruzados entre duas datas especificadas.

Argumentos

datepart: A String que representa a parte da data para calcular a diferença.

startdate: Uma data de início para o cálculo é uma expressão que retorna um DateTime, ou DateTimeOffset, ou Time valor com precisão = [0-7], ou uma cadeia de caracteres em um formato de data.

enddate: Uma data de término para o cálculo é uma expressão que retorna um DateTime, ou DateTimeOffset, ou Time valor com precisão = [0-7], ou uma cadeia de caracteres em um formato de data.

Valor de retorno

Um Int32.

Exemplo

SqlServer.DATEDIFF('day', cast('6/9/2006' as DateTime),

cast('6/20/2006' as DateTime))
DATENAME(datepart, date) Retorna uma sequência de caracteres que representa a parte de data especificada da data especificada.

Argumentos

datepart: A String que representa a parte da data para a qual deve ser retornado um novo valor.

date: Uma expressão que retorna um DateTime, ou DateTimeOffset, ou Time valor com precisão = [0-7], ou uma cadeia de caracteres em um formato de data.

Valor de retorno

A cadeia de caracteres que representa o componente de data especificado da data fornecida.

Exemplo

SqlServer.DATENAME('year', cast('6/9/2006' as DateTime))
DATEPART(datepart, date) Retorna um inteiro que representa a parte da data especificada.

Argumentos

datepart: A String que representa a parte da data para a qual deve ser retornado um novo valor.

date: Uma expressão que retorna um DateTime,, DateTimeOffset,, Time ou valor com precisão = [0-7], ou uma cadeia de caracteres num formato de data.

Valor de retorno

A parte especificada da data especificada, como um Int32.

Exemplo

SqlServer.DATEPART('year', cast('6/9/2006' as DateTime))
DAY(date) Devolve o dia da data especificada como um inteiro.

Argumentos

date:Uma expressão do tipo DateTime ou DateTimeOffset com precisão = 0-7.

Valor de retorno

O dia da data especificada como um Int32.

Exemplo

SqlServer.DAY(cast('6/9/2006' as DateTime))
GETDATE() Produz a data e a hora atuais no formato interno do SQL Server para valores de data e hora.

Valor de retorno

A data e a hora atual do sistema como um DateTime com uma precisão de 3.

Exemplo

SqlServer.GETDATE()
GETUTCDATE() Produz o valor datetime no formato UTC (Tempo Universal Coordenado ou Hora Média de Greenwich).

Valor de retorno

O valor DateTime com uma precisão de 3 dígitos no formato UTC.

Exemplo

SqlServer.GETUTCDATE()
MONTH(date) Devolve o mês da data especificada como um inteiro.

Argumentos

date:Uma expressão do tipo DateTime ou DateTimeOffset com precisão = 0-7.

Valor de retorno

O mês da data especificada como Int32.

Exemplo

SqlServer.MONTH(cast('6/9/2006' as DateTime))
YEAR(date) Devolve o ano da data especificada como um inteiro.

Argumentos

date:Uma expressão do tipo DateTime ou DateTimeOffset com precisão = 0-7.

Valor de retorno

O ano da data especificada como um Int32.

Exemplo

SqlServer.YEAR(cast('6/9/2006' as DateTime))
SYSDATETIME() Devolve um DateTime valor com uma precisão de 7.

Valor de retorno

Um DateTime valor com uma precisão de 7.

Exemplo

SqlServer.SYSDATETIME()
SYSUTCDATE() Produz o valor datetime no formato UTC (Tempo Universal Coordenado ou Hora Média de Greenwich).

Valor de retorno

O valor DateTime com precisão de 7 no formato UTC.

Exemplo

SqlServer.SYSUTCDATE()
SYSDATETIMEOFFSET() Devolve a DateTimeOffset com uma precisão de 7.

Valor de retorno

Um valor DateTimeOffset com precisão de 7 dígitos no formato UTC.

Exemplo

SqlServer.SYSDATETIMEOFFSET()

Para obter mais informações sobre as funções de data e hora que SqlClient suporta, consulte Tipos de dados de data e hora e funções (Transact-SQL).

Ver também