Hay varias formas de devolver el año a partir de una fecha en SQL Server. Aquí hay tres (¿o son cuatro?).
YEAR()
El método más obvio es usar el YEAR()
función. Esta función devuelve un número entero con la parte del año de la fecha especificada.
DECLARE @date date = '2020-10-25';
SELECT YEAR(@date);
Resultado:
2020
DATEPART()
Otra forma de hacerlo es usar DATEPART()
función. Al igual que con el YEAR()
función, DATEPART()
también devuelve el resultado como un número entero.
DECLARE @date date = '2020-10-25';
SELECT DATEPART(year, @date);
Resultado:
2020
Alternativamente, el primer argumento puede ser yy
o yyyy
para producir el mismo resultado.
FORMAT()
El FORMAT()
La función es un poco diferente a las dos anteriores, porque devuelve su resultado como una cadena (nvarchar o nulo).
DECLARE @date date = '2020-10-25'
SELECT FORMAT(@date, 'yyyy');
Resultado:
2020
Año Corto
El FORMAT()
La función también le permite proporcionar el año corto (es decir, aa).
Ejemplo:
DECLARE @date date = '1979-10-25'
SELECT
FORMAT(@date, 'yyyy') AS [yyyy],
FORMAT(@date, 'yy') AS [yy];
Resultado:
+--------+------+ | yyyy | yy | |--------+------| | 1979 | 79 | +--------+------+