Articles

.Guide (Français)

Posted by admin

Transact-SQL comprend un tas de fonctions qui nous aident à travailler avec les dates et les heures. L’une des tâches les plus courantes lorsque vous travaillez avec des dates est d’extraire les différentes parties de la date. Par exemple, parfois, nous ne voulons que l’année ou le mois. D’autres fois, nous pourrions vouloir le jour de la semaine. De toute façon, il existe de nombreuses façons de le faire dans SQL Server.

en particulier, les fonctions suivantes vous permettent de renvoyer le jour, le mois et l’année à partir d’une date dans SQL Server.,

  • DAY(), MONTH(), et YEAR()
  • DATEPART()
  • DATENAME()
  • FORMAT()

Ces fonctions sont expliquées ci-dessous.

les fonctions DAY(), MONTH () et YEAR ()

la façon la plus évidente de renvoyer le jour, le mois et l’année à partir d’une date est d’utiliser les fonctions T-SQL du même nom. Oui, T-SQL a des fonctions construites spécifiquement dans le but de renvoyer ces trois dateparts.,

Voici un exemple de la façon dont ils travaillent:

DECLARE @date datetime2 = '2018-06-02 08:24:14.3112042';SELECT DAY(@date) AS DAY, MONTH(@date) AS MONTH, YEAR(@date) AS YEAR;

Résultat:

+-------+---------+--------+| DAY | MONTH | YEAR ||-------+---------+--------|| 2 | 6 | 2018 |+-------+---------+--------+

Ces fonctions renvoient le datepart comme un entier. Ils renvoient le même résultat que la fonction DATEPART() renvoie pour le datepart spécifié.

la fonction DATEPART ()

la fonctionDATEPART() a été construite spécifiquement pour renvoyer des parties spécifiées d’une date., Par conséquent, nous pouvons utiliser cette fonction pour retourner exactement le même résultat que l’exemple précédent:

Résultat:

+-------+-----------+---------+--------+| DAY | WEEKDAY | MONTH | YEAR ||-------+-----------+---------+--------|| 2 | 7 | 6 | 2018 |+-------+-----------+---------+--------+

Un des avantages de l’utilisation de cette fonction est que vous pouvez aussi retourner à d’autres parties de la date et de l’heure. Comme vous pouvez le voir avec cet exemple, j’ai retourné le jour de la semaine ainsi que le jour (day est le jour du mois, weekday est le jour de la semaine). Vous pouvez également retourner les différentes parties, comme les minutes, secondes, millisecondes, etc. Pour plus d’exemples, voir DATEPART() exemples dans SQL Server.,

la fonction DATEPART() renvoie son résultat sous forme d’entier, et par conséquent, vous ne pourrez pas obtenir le nom du mois ou le nom du jour de la semaine à partir de la date. Mais ne vous inquiétez pas, vous pouvez utiliser la balise DATENAME() ou FORMAT() fonctions pour que.

la fonction DATENAME ()

la fonctionDATENAME() est similaire à la fonctionDATEPART(), sauf qu’elle renvoie le résultat sous forme de chaîne de caractères au lieu d’un entier., DATENAME() renvoie également le mois et le jour de la semaine comme nom complet, plutôt que leur valeur numérique.

Exemple:

Résultat:

+-------+-----------+---------+--------+| DAY | WEEKDAY | MONTH | YEAR ||-------+-----------+---------+--------|| 2 | Saturday | June | 2018 |+-------+-----------+---------+--------+

Pour plus d’exemples de cette fonction, voir la DATENAME() Exemples dans SQL Server.

La Fonction FORMAT ()

On peut utiliser la balise FORMAT() fonction pour renvoyer les mêmes valeurs qu’avec la balise DATENAME() fonction, et plus encore.

C’est une fonction polyvalente que les précédents. Il vous permet de formater la date / heure ainsi que des valeurs numériques sous forme de chaînes., La valeur de retour est nvarchar ou null (en fonction de l’entrée), et la longueur de la chaîne est déterminée par le format spécifié.

FORMAT() fournit également plus d’options pour la présentation du datepart. Vous pouvez spécifier s’il faut l’afficher comme un seul caractère, deux caractères, trois, quatre et même cinq dans certains cas.

Voici des exemples pour démontrer.,

Jour

Résultat:

+-----+------+-------+----------+| d | dd | ddd | dddd ||-----+------+-------+----------|| 2 | 02 | Sat | Saturday |+-----+------+-------+----------+

Mois

Résultat:

+-----+------+-------+--------+| M | MM | MMM | MMMM ||-----+------+-------+--------|| 6 | 06 | Jun | June |+-----+------+-------+--------+

Année

Résultat:

+-----+------+-------+--------+---------+| y | yy | yyy | yyyy | yyyyy ||-----+------+-------+--------+---------|| 18 | 18 | 2018 | 2018 | 02018 |+-----+------+-------+--------+---------+

Notez que nous avons l’option de mise en forme de la partie année de cinq chiffres.

à propos du nombre de chiffres

lors du retour d’un datepart sous forme de chiffres, le spécificateur de format détermine le nombre minimum de chiffres à renvoyer., Par exemple, lors de l’utilisation de yyy, l’année sera retourné trois chiffres si l’année est 0008 mais, comme quatre chiffres si l’année est 2008.

exemple:

résultat:

+-----+------+-------+--------+---------+| y | yy | yyy | yyyy | yyyyy ||-----+------+-------+--------+---------|| 8 | 08 | 008 | 0008 | 00008 |+-----+------+-------+--------+---------+

de plus, lorsque vous utilisez l’option unique (par exemple d) comme spécificateur de date, vous devrez ajouter un espace si vous voulez seulement que datepart soit retourné par lui-même. Si vous ne le faites pas, vous obtiendrez plus que ce seul datepart.,

exemple:

résultat:

+---------+------------+---------+------------+---------+------------+| Space | No Space | Space | No Space | Space | No Space ||---------+------------+---------+------------+---------+------------|| 2 | 6/2/2008 | 6 | June 2 | 8 | June 2008 |+---------+------------+---------+------------+---------+------------+

pour plus d’exemples FORMAT(), voir comment formater la Date et L’heure dans SQL Server.

Leave A Comment