DATEPART (Transact-SQL)
Retourne un entier représentant l'élément de date précisé dans la date spécifiée.
Conventions de la syntaxe de Transact-SQL
Syntaxe
DATEPART ( datepart , date )
Arguments
datepart
Paramètre qui indique la partie de date à retourner. Le tableau suivant répertorie les éléments de date et les abréviations que reconnaît Microsoft SQL Server 2005.Élément de date Abréviations year
yy, yyyy
quarter
qq, q
month
mm, m
dayofyear
dy, y
day
dd, d
week
wk, ww
weekday
dw
hour
hh
minute
mi, n
second
ss, s
millisecond
ms
L'élément de date week (wk, ww) reflète les modifications apportées à SET DATEFIRST. Le 1er janvier d'une année définit le nombre de départ de l'élément de date week, par exemple : DATEPART(wk,'Jan 1, xxxx') = 1, xxxx représentant une année quelconque.
L'élément de date weekday (dw) retourne un nombre correspondant au jour de la semaine, par exemple : 1 représente le dimanche et 7 le samedi. Le nombre obtenu à l'aide de l'élément de date weekday dépend de la valeur configurée par SET DATEFIRST. Elle spécifie le premier jour de la semaine.
date
Expression qui retourne une valeur de type datetime ou smalldatetime, ou encore une chaîne de caractères dans un format de date. N'utilisez le type de données datetime que pour les dates postérieures au 1er janvier 1753. Stockez les dates antérieures en tant que données de type caractère. Lorsque vous entrez des valeurs de type datetime, délimitez-les toujours par des guillemets. Étant donné que la minute est la précision de smalldatetime, en cas d'utilisation d'une valeur smalldatetime, les secondes et les millisecondes sont toujours égales à 0.Si vous précisez seulement les deux derniers chiffres de l'année, les valeurs inférieures ou égales aux deux derniers chiffres de la valeur de l'option de configuration two-digit year cutoff appartiennent au même siècle que l'année tronquée. Les valeurs supérieures aux deux derniers chiffres de la valeur de cette option appartiennent au siècle qui précède l'année tronquée. Par exemple, si two-digit year cutoff a pour valeur 2049 (valeur par défaut), 49 est interprété comme 2049 et 50 est interprété comme 1950. Pour éviter toute ambiguïté, représentez les années à l'aide de quatre chiffres.
Pour plus d'informations sur la définition des valeurs de temps, consultez Formats d'heure. Pour plus d'informations sur la spécification de dates, consultez Date et Time (Transact-SQL).
Notes
Les fonctions DAY, MONTH, and YEAR correspondent respectivement à DATEPART(**dd,**date), DATEPART(mm,date) et DATEPART(yy, date).
Types de retour
int
Exemples
La fonction GETDATE retourne la date du jour. Toutefois, la date complète ne représente pas toujours les informations requises pour effectuer une comparaison ; il arrive souvent de ne comparer qu'une partie de la date. L'exemple suivant montre la sortie de GETDATE
et DATEPART
.
SELECT GETDATE() AS 'Current Date'
GO
Voici l'ensemble des résultats.
Current Date
---------------------------
Feb 18 1998 11:46PM
SELECT DATEPART(month, GETDATE()) AS 'Month Number'
GO
Voici l'ensemble des résultats.
Month Number
------------
2
L'exemple suivant suppose que la date est le 29 mai.
SELECT DATEPART(month, GETDATE())
GO
Voici l'ensemble des résultats.
-----------
5
(1 row(s) affected)
Dans l'exemple suivant, la date est spécifiée comme un nombre. Notez que SQL Server interprète 0 comme représentant le 1er janvier 1900.
SELECT DATEPART(m, 0), DATEPART(d, 0), DATEPART(yy, 0)
Voici l'ensemble des résultats.
----- ------ ------
1 1 1900
Voir aussi
Référence
CAST et CONVERT (Transact-SQL)
Types de données (Transact-SQL)
Fonctions de date et d'heure (Transact-SQL)
Autres ressources
Format ISO 8601
Format de date alphabétique
Format de date numérique
Format de date et d'heure ODBC
Formats d'heure
Format de chaîne non séparée