SQLite no tiene un DATEADD() función como SQL Server (o un ADDDATE() o ADD_DATE() funciona como en otros DBMS), pero tiene el DATE() función que puede hacer adiciones a un valor de fecha.
SQLite también tiene un DATETIME() función que puede hacer adiciones a un valor de fecha y hora (así como un TIME() función para valores de tiempo).
Ejemplo
Aquí hay un ejemplo para demostrar cómo DATE() de SQLite La función se puede usar para agregar diez días a una fecha:
SELECT DATE('2050-08-21', '+10 days'); Resultado:
2050-08-31
Y podemos sumar meses de la misma manera:
SELECT DATE('2050-08-21', '+1 month'); Resultado:
2050-09-21
Y lo mismo con los años:
SELECT DATE('2050-08-21', '+1 year'); Resultado:
2051-08-21
Tenga en cuenta que el intervalo se puede especificar en su forma plural o no plural. Entonces, lo siguiente produce los mismos resultados que el ejemplo anterior:
SELECT DATE('2050-08-21', '+1 years'); Resultado:
2051-08-21
Horas, minutos y segundos
El DATETIME() La función nos permite agregar horas, minutos y segundos a un valor de fecha y hora dado:
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"; Resultado:
Hours Minutes Seconds ------------------- ------------------- ------------------- 2050-08-21 01:00:00 2050-08-21 00:01:00 2050-08-21 00:00:01
Y para los valores de tiempo, aquí está el TIME() función:
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"; Resultado:
Hours Minutes Seconds -------- -------- -------- 01:00:00 00:01:00 00:00:01
Restar de fechas
También podemos usar DATE() restar:
SELECT DATE('2050-08-21', '-10 days'); Resultado:
2050-08-11
Todo lo que hacemos es usar el - inicie sesión en el segundo argumento en lugar de + .