Der er flere måder at returnere året fra en dato i SQL Server. Her er tre (eller er det fire?).
YEAR()
Den mest oplagte metode er at bruge YEAR()
fungere. Denne funktion returnerer et heltal med årsdelen af den angivne dato.
DECLARE @date date = '2020-10-25';
SELECT YEAR(@date);
Resultat:
2020
DATEPART()
En anden måde at gøre det på er at bruge DATEPART()
fungere. Som med YEAR()
funktion, DATEPART()
returnerer også resultatet som et heltal.
DECLARE @date date = '2020-10-25';
SELECT DATEPART(year, @date);
Resultat:
2020
Alternativt kan det første argument være yy
eller yyyy
at producere det samme resultat.
FORMAT()
FORMAT()
funktion er en smule anderledes end de foregående to, fordi den returnerer sit resultat som en streng (nvarchar eller null).
DECLARE @date date = '2020-10-25'
SELECT FORMAT(@date, 'yyyy');
Resultat:
2020
Kort år
FORMAT()
funktionen giver dig også mulighed for at angive det korte år (dvs. åå).
Eksempel:
DECLARE @date date = '1979-10-25'
SELECT
FORMAT(@date, 'yyyy') AS [yyyy],
FORMAT(@date, 'yy') AS [yy];
Resultat:
+--------+------+ | yyyy | yy | |--------+------| | 1979 | 79 | +--------+------+