Dans SQLite, nous pouvons utiliser le DATE()
fonction pour soustraire une ou plusieurs années à une date.
Pour les valeurs datetime, nous pouvons utiliser le DATETIME()
fonction.
Exemple
Voici un exemple qui utilise le DATE()
fonction :
SELECT DATE('2050-08-21', '-1 year');
Résultat :
2049-08-21
Si nous voulions ajouter le montant, nous pourrions remplacer -
avec +
, ou omettez-le complètement.
Nous pouvons spécifier les années au pluriel ou non pluriel. En d'autres termes, year
est équivalent à years
:
SELECT
DATE('2050-08-21', '-5 year') AS year,
DATE('2050-08-21', '-5 years') AS years;
Résultat :
year years ---------- ---------- 2045-08-21 2045-08-21
Spécifié en mois ou en jours
Nous pouvons également soustraire des années en fonction d'un nombre de mois ou de jours :
SELECT
DATE('2050-08-21', '-12 months') AS "12 Months",
DATE('2050-08-21', '-365 days') AS "365 Days";
Résultat :
12 Months 365 Days ---------- ---------- 2049-08-21 2049-08-21
Le DATETIME()
Fonction
Cet exemple utilise le DATETIME()
fonction pour faire la même chose :
SELECT DATETIME('2050-08-21', '-1 year');
Résultat :
2049-08-21 00:00:00
Dans ce cas, j'ai passé une valeur de date, mais la fonction a renvoyé une valeur datetime.
Voici un autre exemple, cette fois avec une valeur datetime :
SELECT DATETIME('2050-08-21 18:30:45', '-1 year');
Résultat :
2049-08-21 18:30:45