Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Obter o dia do ano de uma data no SQL Server (T-SQL)


TSQL fornece o DATEPART() função, que nos permite retornar o dia do ano para uma determinada data no SQL Server.

Por “dia do ano”, quero dizer o número do dia de um determinado ano.

Exemplo


Para retornar o dia do ano, use dayofyear como o valor para o primeiro argumento.
DECLARE @date date = '2020-10-25';
SELECT DATEPART(dayofyear, @date);

Resultado:
299

Argumentos alternativos


Alternativamente, você pode usar dy ou y como os valores para o primeiro argumento. Todos eles retornam a mesma saída.
DECLARE @date date = '2020-12-31';
SELECT 
    DATEPART(dayofyear, @date) AS dayofyear,
    DATEPART(dy, @date) AS dy,
    DATEPART(y, @date) AS y;

Resultado:
+-------------+------+-----+
 | dayofyear   | dy   | y   |
 |-------------+------+-----|
 | 366         | 366  | 366 |
 +-------------+------+-----+ 

Nesse caso, a data cai em um ano bissexto.