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.