La fonction DATENAME() renvoie une chaîne de caractères, de type navarchar, qui représente une partie de date spécifiée, il peut s’agir d’un jour, d’un mois, d’une année ou d’une heure de date spécifique.

DATENAME() est similaire à DATEPART() sauf pour le type de retour.

La fonction DATENAME() renvoie la partie date sous forme de chaîne de caractères alors que la fonction DATEPART() renvoie la partie date sous forme d’entier.

SYNTAX

DATENAME (datepart, inputdate) 

datepart est la partie d’une date à extraire.

inputdate est la date dont la partie de date est extraite.

Regardons un exemple de la fonction DATENAME en SQL.

L’instruction suivante utilise la fonction DATENAME, qui extrait les parties de date de la date donnée ‘2018-03-27 18:23:45.470’

DECLARE @date DATETIME = '2018-03-27 18:23:45.470';SELECT DATENAME(year, @date) as year,DATENAME(quarter, @date) as quarter,DATENAME(month, @date) as month,DATENAME(day, @date) as day,DATENAME(dayofyear ,@date) as dayofyear,DATENAME(Week ,@date) as week,DATENAME(hour, @date) as hour,DATENAME(minute, @date) as minute,DATENAME(second, @date) as second ,DATENAME(millisecond, @date) as millisecond ,DATENAME(microsecond, @date) as microsecond ,DATENAME(nanosecond, @date) as nanosecond

Comme vous pouvez le voir, elle renvoie toutes les parties de la date telles que le trimestre, le mois, le jour, le jour de l’année, la semaine, l’heure, la minute, la seconde, la miliseconde, la microseconde et la nanoseconde.

Donc en utilisant la fonction DATENAME vous pouvez obtenir n’importe quelle partie de la date.

Suivant sont les listes de datepart valides que vous pouvez utiliser pour obtenir une partie de la date selon votre exigence.

day d, dd month m, mmyear yy, yyyyquarter qq, qhour hhminute mi, nsecond ss, smillisecond msmicrosecond mcsnanosecond nsweek wk, wwdayofyear dy, y

DATEPART VS DATENAME

Regardons un exemple considérant la différence entre DATEPART et DATENAME.

DATEPART renvoie une partie de la date comme un entier alors que DATENAME renvoie du datatype string.

Donc si vous ajoutez un nombre au résultat renvoyé par DATEPART, il ajoute le nombre au résultat et renvoie le résultat modifié alors que lorsque vous ajoutez un nombre au résultat renvoyé par DATENAME , il concatène le nombre avec le résultat au lieu de l’ajouter .

Regardons un exemple, dans l’énoncé suivant vous pouvez voir pour la date donnée nous essayons d’ajouter la valeur 2 dans le résultat retourné par la fonction DATEPART et DATENAME pour la partie date du mois et de l’année pour la date donnée.

Vous pouvez voir le résultat final où la fonction DATEPART ajoute le 2 dans le résultat tandis que DATENAME concatène le 2 avec le résultat.

DECLARE @date DATETIME = '2018-03-27 18:23:45.470';SELECT DATENAME(month, @date) + '2' as month_from_DateName, DATEPART(month, @date) + '2' as month_from_DatePart SELECT DATENAME(year, @date) + '2' as year_from_DateName, DATEPART(year, @date) + '2' as year_from_DatePart,

Recommandé pour vous

SQL Server DATEPART()

325 total views, 3 views today

.

admin

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

lg