Existem várias maneiras de retornar o ano de uma data no SQL Server. Aqui estão três (ou são quatro?).
YEAR()
O método mais óbvio é usar o
YEAR()
função. Esta função retorna um inteiro com a parte do ano da data especificada. DECLARE @date date = '2020-10-25';
SELECT YEAR(@date);
Resultado:
2020
DATEPART()
Outra maneira de fazer isso é usar o
DATEPART()
função. Assim como o YEAR()
função, DATEPART()
também retorna o resultado como um inteiro. DECLARE @date date = '2020-10-25';
SELECT DATEPART(year, @date);
Resultado:
2020
Alternativamente, o primeiro argumento pode ser
yy
ou yyyy
para produzir o mesmo resultado. FORMAT()
O
FORMAT()
é um pouco diferente das duas anteriores, pois retorna seu resultado como uma string (nvarchar ou nulo). DECLARE @date date = '2020-10-25'
SELECT FORMAT(@date, 'yyyy');
Resultado:
2020
Ano Curto
O
FORMAT()
A função também permite fornecer o ano curto (ou seja, aa). Exemplo:
DECLARE @date date = '1979-10-25'
SELECT
FORMAT(@date, 'yyyy') AS [yyyy],
FORMAT(@date, 'yy') AS [yy];
Resultado:
+--------+------+ | yyyy | yy | |--------+------| | 1979 | 79 | +--------+------+