MariaDB propose plusieurs façons d'ajouter un certain nombre de jours à une date donnée. Par exemple, vous pouvez ajouter 10 jours à une date, ou 30 jours, ou même juste 1 jour. Heureusement, MariaDB rend cela facile.
Voici 8 façons d'ajouter un nombre de jours à une date donnée dans MariaDB.
Le ADDDATE()
Fonction
Commençons par le ADDDATE()
une fonction.
Cette fonction a deux syntaxes différentes. La première syntaxe fournit une manière concise d'ajouter un certain nombre de jours à une date.
Exemple :
SELECT ADDDATE('2021-05-01', 10);
Résultat :
+---------------------------+| ADDATE('2021-05-01', 10) |+---------------------------+| 2021-05-11 |+-----------------------------------+
En utilisant cette syntaxe, nous fournissons deux arguments. Le premier argument est la date, et le second est le nombre de jours à ajouter à cette date.
Le ADDDATE()
Fonction – Syntaxe 2
Le ADDDATE()
La fonction a également une syntaxe plus détaillée. Cette syntaxe nous permet d'être plus explicite dans la façon dont nous ajoutons les jours à la date.
Exemple :
SELECT ADDDATE('2021-05-01', INTERVAL 10 DAY);
Résultat :
+---------------------------------------------+| ADDATE('2021-05-01', INTERVALLE 10 JOURS) |+----------------------------------------------- ------+| 2021-05-11 |+----------------------------------------+Dans ce cas, nous utilisons le
INTERVAL
mot-clé, suivi du nombre de jours, suivi duDAY
mot-clé.L'
INTERVAL
le mot-clé est utilisé pour ajouter ou soustraire un intervalle de temps à unDATETIME
,DATE
ouTIME
valeur. Nous pouvons l'utiliser sur les dates, avec l'unité de date/heure applicable pour ajouter un certain nombre de jours à notre date. Dans notre cas, l'unité de date/heure estDAY
, mais cela pourrait tout aussi bien êtreMONTH
,YEAR
,TIME
, etc., ainsi qu'un certain nombre d'unités composites.Le
DATE_ADD()
FonctionLe
DATE_ADD()
la fonction fonctionne de la même manière queADDDATE()
lors de l'utilisation de la syntaxe détaillée. En fait, lors de l'utilisation de la syntaxe détaillée,ADDDATE()
est un synonyme deDATE_ADD()
.Exemple :
SELECT DATE_ADD('2021-05-01', INTERVAL 10 DAY);
Résultat :
+-------------------------------------------------------+| DATE_ADD('2021-05-01', INTERVALLE 10 JOURS) |+----------------------------------------------- -------+| 2021-05-11 |+-------------------------------------------------------+Le
SUBDATE()
Fonction – Syntaxe 1Le
SUBDATE()
la fonction vous permet de soustraire un montant à une date. Cependant, si vous fournissez une valeur négative à soustraire, elle finit par être ajoutée à la date.Exemple :
SELECT SUBDATE('2021-05-01', -10);
Résultat :
+----------------------------+| SOUSDATE('2021-05-01', -10) |+----------------------------+| 2021-05-11 |+-----------------------------------+Le
SUBDATE()
Fonction – Syntaxe 2Le
SUBDATE()
La fonction a également la syntaxe la plus détaillée (similaire àADDDATE()
fonction).Exemple :
SELECT SUBDATE('2021-05-01', INTERVAL -10 DAY);
Résultat :
+-------------------------------------------------------+| SOUS-DATE('2021-05-01', INTERVALLE -10 JOURS) |+-------------------------------- --------+| 2021-05-11 |+-------------------------------------------------------+Le
DATE_SUB()
FonctionVoici un exemple qui utilise le
DATE_SUB()
fonction :SELECT DATE_SUB('2021-05-01', INTERVAL -10 DAY);
Résultat :
+-------------------------------------------------------+| DATE_SUB('2021-05-01', INTERVALLE -10 JOURS) |+-------------------------------- ---------+| 2021-05-11 |+-------------------------------------------------------+Le
+
OpérateurUne autre option consiste à utiliser le
+
opérateur.Le
+
L'opérateur est utilisé pour effectuer l'addition, et nous pouvons l'utiliser sur les dates, avec l'unité de date/heure applicable pour ajouter un certain nombre de jours à notre date.Exemple :
SELECT '2021-05-01' + INTERVAL 10 DAY;
Résultat :
+---------------------------------------------+| '2021-05-01' + INTERVALLE 10 JOURS |+--------------------------------+| 2021-05-11 |+---------------------------------------------+Le
-
OpérateurLe
-
peut être utilisé pour soustraire un montant d'une date. Cependant, si vous soustrayez un nombre négatif, alors un montant positif est ajouté à la date :SELECT '2021-05-01' - INTERVAL -10 DAY;
Résultat :
+---------------------------------------------+| '2021-05-01' - INTERVALLE -10 JOURS |+---------------------------------+| 2021-05-11 |+---------------------------------------------+BONUS :Le
ADDTIME()
FonctionJ'ai dit que cet article contient 8 façons d'ajouter des jours à une date, mais voici quelques fonctions bonus ! Peut-être que j'aurais dû appeler cet article "10 façons d'ajouter des jours à une valeur datetime" à la place.
Quoi qu'il en soit, vous pouvez utiliser le
ADDTIME()
fonction pour ajouter un nombre de jours à une expression datetime.Exemple :
SELECT ADDTIME('2021-05-01 10:30:45', '1 0:0:0');
Résultat :
+------------------------------------------------+| ADDTIME('2021-05-01 10:30:45', '1 0:0:0') |+------------------------ -------------------+| 2021-05-02 10:30:45 |+-------------------------------------------------- -----+Vous pouvez également modifier les autres unités de temps, telles que les heures, les minutes, les secondes, etc.
Vous pouvez également le changer et utiliser
SUBTIME()
avec une valeur négative si vous le souhaitez :SELECT SUBTIME('2021-05-01 10:30:45', '-1 0:0:0');
Résultat :
+-------------------------------------------------+| SUBTIME('2021-05-01 10:30:45', '-1 0:0:0') |+----------------------- ---------------------+| 2021-05-02 10:30:45 |+-------------------------------------------------- ------+Autres unités de date et d'heure
Les exemples ci-dessus ajoutent un nombre de jours à la date, mais nous pouvons utiliser les mêmes techniques pour ajouter n'importe quelle unité de date/heure. Nous utilisons
DAY
comme unité de date/heure, mais comme mentionné, cela pourrait tout aussi bien êtreMONTH
,YEAR
,TIME
, etc., ainsi que toutes les unités composites.Voir Unités de date et d'heure MariaDB pour une liste complète des unités de date/heure qui peuvent être utilisées avec les fonctions et l'opérateur ci-dessus.