Es gibt mehrere Möglichkeiten, das Jahr aus einem Datum in SQL Server zurückzugeben. Hier sind drei (oder sind es vier?).
YEAR()
Die naheliegendste Methode ist die Verwendung von YEAR()
Funktion. Diese Funktion gibt eine Ganzzahl mit dem Jahresteil des angegebenen Datums zurück.
DECLARE @date date = '2020-10-25';
SELECT YEAR(@date);
Ergebnis:
2020
DATEPART()
Eine andere Möglichkeit ist die Verwendung von DATEPART()
Funktion. Wie beim YEAR()
Funktion, DATEPART()
gibt das Ergebnis auch als Ganzzahl zurück.
DECLARE @date date = '2020-10-25';
SELECT DATEPART(year, @date);
Ergebnis:
2020
Alternativ kann das erste Argument yy
sein oder yyyy
um dasselbe Ergebnis zu erzielen.
FORMAT()
Das FORMAT()
Die Funktion unterscheidet sich ein wenig von den beiden vorherigen, da sie ihr Ergebnis als Zeichenfolge zurückgibt (nvarchar oder null).
DECLARE @date date = '2020-10-25'
SELECT FORMAT(@date, 'yyyy');
Ergebnis:
2020
Kurzes Jahr
Das FORMAT()
Mit der Funktion können Sie auch das Kurzjahr (z. B. JJ) angeben.
Beispiel:
DECLARE @date date = '1979-10-25'
SELECT
FORMAT(@date, 'yyyy') AS [yyyy],
FORMAT(@date, 'yy') AS [yy];
Ergebnis:
+--------+------+ | yyyy | yy | |--------+------| | 1979 | 79 | +--------+------+