SQLite har ikke en DATEADD() funktion som SQL Server (eller en ADDDATE() eller ADD_DATE() fungerer som i nogle andre DBMS'er), men den har DATE() funktion, der kan tilføje tilføjelser til en datoværdi.
SQLite har også en DATETIME() funktion, der kan tilføje tilføjelser til en datetime-værdi (såvel som en TIME() funktion for tidsværdier).
Eksempel
Her er et eksempel for at demonstrere, hvordan SQLites DATE() funktionen kan bruges til at tilføje ti dage til en dato:
SELECT DATE('2050-08-21', '+10 days'); Resultat:
2050-08-31
Og vi kan tilføje måneder på samme måde:
SELECT DATE('2050-08-21', '+1 month'); Resultat:
2050-09-21
Og det er det samme med år:
SELECT DATE('2050-08-21', '+1 years'); Resultat:
2051-08-21
Bemærk, at intervallet kan angives i flertals- eller ikke-flertalsform. Så det følgende giver de samme resultater som det foregående eksempel:
SELECT DATE('2050-08-21', '+1 years'); Resultat:
2051-08-21
Timer, minutter og sekunder
DATETIME() funktion giver os mulighed for at tilføje timer, minutter og sekunder til en given datetime-værdi:
SELECT
DATETIME('2050-08-21 00:00:00.000', '+1 hour') AS "Hours",
DATETIME('2050-08-21 00:00:00.000', '+1 minute') AS "Minutes",
DATETIME('2050-08-21 00:00:00.000', '+1 second') AS "Seconds"; Resultat:
Hours Minutes Seconds ------------------- ------------------- ------------------- 2050-08-21 01:00:00 2050-08-21 00:01:00 2050-08-21 00:00:01
Og for tidsværdier er her TIME() funktion:
SELECT
TIME('00:00:00.000', '+1 hour') AS "Hours",
TIME('00:00:00.000', '+1 minute') AS "Minutes",
TIME('00:00:00.000', '+1 second') AS "Seconds"; Resultat:
Hours Minutes Seconds -------- -------- -------- 01:00:00 00:01:00 00:00:01
Træk fra datoer
Vi kan også bruge DATE() at trække fra:
SELECT DATE('2050-08-21', '-10 days'); Resultat:
2050-08-11
Alt vi gør er at bruge - log ind i det andet argument i stedet for + .