A função DATENAME() retorna uma string, tipo navarchar, que representa uma data especificada parte da data, pode ser um dia, mês, ano ou hora de data específica.

DATENAME() é similar ao DATEPART() exceto pelo tipo de retorno.

A função DATENAME() retorna a parte da data como uma string de caracteres enquanto a função DATEPART() retorna a parte da data como um inteiro.

SYNTAX

DATENAME (datepart, inputdate) 

datepart é a parte de uma data a ser extraída.

inputdate é a data a partir da qual a parte da data é extraída.

Vejamos um exemplo da função DATENAME em SQL.

Seguir a instrução usa a função DATENAME, que extrai as partes da data de uma determinada data ‘2018-03-27 18:23:45.470’

DECLARE @date DATETIME = '2018-03-27 18:23:45.470';SELECT DATENAME(year, @date) as year,DATENAME(quarter, @date) as quarter,DATENAME(month, @date) as month,DATENAME(day, @date) as day,DATENAME(dayofyear ,@date) as dayofyear,DATENAME(Week ,@date) as week,DATENAME(hour, @date) as hour,DATENAME(minute, @date) as minute,DATENAME(second, @date) as second ,DATENAME(millisecond, @date) as millisecond ,DATENAME(microsecond, @date) as microsecond ,DATENAME(nanosecond, @date) as nanosecond

Como pode ver, Retorna toda a parte da data como Trimestre, Mês, dia, dia do ano, semana, hora, minuto, segundo, milissegundo, microssegundo e nanossegundo.

Então, usando a função DATENAME você pode obter qualquer parte da data.

A seguir são a lista de partes válidas da data que você pode usar para obter uma parte da data como por sua exigência.

day d, dd month m, mmyear yy, yyyyquarter qq, qhour hhminute mi, nsecond ss, smillisecond msmicrosecond mcsnanosecond nsweek wk, wwdayofyear dy, y

DATEPART VS DATENAME

Vejamos um exemplo considerando a diferença entre DATEPART e DATENAME.

DATEPART retorna uma parte da data como um número inteiro onde como DATENAME retorna uma string do tipo datatype.

Então se você adicionar qualquer número ao resultado retornado por DATEPART, ele adiciona o número ao resultado e retorna o resultado modificado onde como quando você adiciona qualquer número ao resultado retornado por DATENAME , ele concatena o número com o resultado ao invés de adicioná-lo .

Vejamos um exemplo, na seguinte instrução você pode ver para determinada data que tentamos adicionar o valor 2 no resultado retornado por DATEPART e função DATENAME para a data parte do mês e ano para determinada data.

Pode ver o resultado final onde a função DATEPART adiciona o 2 no resultado enquanto DATENAME concatena o 2 com o resultado.

DECLARE @date DATETIME = '2018-03-27 18:23:45.470';SELECT DATENAME(month, @date) + '2' as month_from_DateName, DATEPART(month, @date) + '2' as month_from_DatePart SELECT DATENAME(year, @date) + '2' as year_from_DateName, DATEPART(year, @date) + '2' as year_from_DatePart,

Recomendado para si

SQL Server DATEPART()

325 vistas totais, 3 vistas hoje

admin

Deixe uma resposta

O seu endereço de email não será publicado.

lg