Fonction SQL Server DataEadd

Fonction SQL Server DataEadd

Les données de date et d'heure sont courantes dans SQL Server, et il existe des types de données intégrés pour la date et l'heure. SQL Server fournit également plusieurs fonctions pour travailler avec des types de dates.

Ce guide court mais détaillé vous apprendra comment utiliser la fonction DataEadd dans les fonctions, requêtes et procédures de SQL Server.

Les bases

La fonction SQL Server DataEadd vous permet d'ajouter ou de soustraire une unité de date spécifique à la date spécifiée et de renvoyer la date résultante.

Nous pouvons exprimer la syntaxe de la fonction DataEadd comme:

dataEadd ([unit_of_time] [valeur] [cible_date]);

Comme le montre la syntaxe ci-dessus, la fonction accepte trois arguments principaux:

  1. Unit_of_time-Le premier argument représente l'unité de temps pour ajouter à la date spécifiée.
  2. Valeur-L'argument de valeur représente le nombre ajouté ou soustrait à la date cible. Il s'agit d'une valeur de type entier; Par conséquent, la fonction tronquera si la valeur fournie est un type décimal ou flottant.
  3. Target_Date-Cet argument représente la date à partir de laquelle ajouter ou soustraire la valeur spécifiée. Il peut s'agir d'une valeur de date littérale ou d'une expression à partir des fonctions de date de serveur SQL.

La fonction accepte une valeur spécifique pour le paramètre de l'unité de temps. Les valeurs acceptées sont comme indiqué dans le tableau ci-dessous:

abréviation unitaire
-------------------------------------------------- ------------
nanoseconde ns
MCS microsecondes
milliseconde MS
Second S, SS
Minute mi, n
Heure HH
semaine wk, ww
Jour DD, D
Jour de l'année, dy, y
Mois mm, m
quartier qq, q
Année yy, yyyy
(12 rangées affectées)

La fonction ajoutera ensuite une valeur de date après avoir ajouté ou soustrait la valeur unitaire spécifique de la date cible.

Exemple SQL Server Exemple

Laissez maintenant utiliser divers exemples pour comprendre comment utiliser la fonction DATAEADD dans SQL Server.

Exemple 1

La requête ci-dessous ajoute une seconde à la date spécifiée.

Sélectionnez DataEadd (deuxième, 1, «2021-12-24 23:59:59»);

La valeur résultante est comme indiqué:

2021-12-25 00:00:00.000

Exemple 2

Ajoutons un an à partir de la date d'aujourd'hui. Nous pouvons exécuter une requête comme indiqué ci-dessous:

Sélectionnez dataEadd (année, 1, current_timestamp);

La requête ci-dessus ajoutera un an à l'horodatage actuel. Un exemple de valeur de résultat est:

2022-12-19 15:14:13.883

Exemple 3

Nous pouvons également soustraire une unité de temps spécifique à partir de la date cible. Considérez l'exemple de requête comme indiqué:

Sélectionner dataEadd (année, -5, current_timestamp);

L'exemple ci-dessus soustrait 5 ans de l'horodatage actuel.

La valeur résultante est comme:

2016-12-19 15:16:07.970

Exemple 4

Que se passe-t-il si vous ajoutez un mois et que la date résultante n'existe pas. Dans un tel cas, la fonction DATAEADD reviendra le dernier jour du mois.

Un exemple de requête comme:

Sélectionnez DataEadd (mois, 4, '2022-05-31 00: 00: 00: 000');

Puisqu'il n'y a pas le 31 septembre, la requête renvoie le 30 septembre comme:

2022-09-30 00:00:00.000

Exemple 5

Ajouter une heure à une date cible et obtenir le résultat.

Sélectionnez DataEadd (Hour, 1, '2022-06-30 00: 00: 00: 000');

La valeur résultante est comme:

2022-06-30 01:00:00.000

Exemple 6

Vous pouvez également utiliser la fonction DataEadd pour trouver la différence entre deux dates et la valeur temporelle. Par exemple:

SELECT DATAEADD (MINUTE, DADAFIF (MINUTE, '2016-12-31 05: 39: 39: 100', '2022-06-27 01: 35: 33: 333'), 0);

La valeur résultante est comme:

1905-06-27 19:56:00.000

Dernières pensées

Dans ce guide, vous comprenez comment utiliser la fonction SQL Server DataEadd à l'aide de divers exemples. La fonction DATAEADD est très utile lors de la manipulation des données de date et d'heure dans SQL Server.

Restez à l'écoute pour plus de contenu SQL Server.