Il existe plusieurs façons de renvoyer l'année à partir d'une date dans SQL Server. En voici trois (ou est-ce quatre ?).
YEAR()
La méthode la plus évidente consiste à utiliser le YEAR()
une fonction. Cette fonction renvoie un entier avec la partie année de la date spécifiée.
DECLARE @date date = '2020-10-25';
SELECT YEAR(@date);
Résultat :
2020
DATEPART()
Une autre façon de le faire est d'utiliser le DATEPART()
une fonction. Comme pour le YEAR()
fonction, DATEPART()
renvoie également le résultat sous forme d'entier.
DECLARE @date date = '2020-10-25';
SELECT DATEPART(year, @date);
Résultat :
2020
Alternativement, le premier argument peut être yy
ou yyyy
pour produire le même résultat.
FORMAT()
Le FORMAT()
est un peu différente des deux précédentes, car elle renvoie son résultat sous forme de chaîne (nvarchar ou nul).
DECLARE @date date = '2020-10-25'
SELECT FORMAT(@date, 'yyyy');
Résultat :
2020
Année courte
Le FORMAT()
La fonction vous permet également de fournir l'année courte (c'est-à-dire aa).
Exemple :
DECLARE @date date = '1979-10-25'
SELECT
FORMAT(@date, 'yyyy') AS [yyyy],
FORMAT(@date, 'yy') AS [yy];
Résultat :
+--------+------+ | yyyy | yy | |--------+------| | 1979 | 79 | +--------+------+