SQLite
 sql >> Datenbank >  >> RDS >> SQLite

SQLite DATEADD()-Äquivalent

SQLite hat kein DATEADD() Funktion wie SQL Server (oder ein ADDDATE()). oder ADD_DATE() Funktion wie in einigen anderen DBMS), aber es hat das DATE() Funktion, die einen Datumswert ergänzen kann.

SQLite hat auch ein DATETIME() Funktion, die einen datetime-Wert (sowie einen TIME()) ergänzen kann Funktion für Zeitwerte).

Beispiel

Hier ist ein Beispiel, um zu demonstrieren, wie SQLites DATE() Funktion kann verwendet werden, um zehn Tage zu einem Datum hinzuzufügen:

SELECT DATE('2050-08-21', '+10 days');

Ergebnis:

2050-08-31

Und wir können Monate auf die gleiche Weise hinzufügen:

SELECT DATE('2050-08-21', '+1 month');

Ergebnis:

2050-09-21

Und genauso ist es mit den Jahren:

SELECT DATE('2050-08-21', '+1 year');

Ergebnis:

2051-08-21

Beachten Sie, dass das Intervall in seiner Plural- oder Nicht-Pluralform angegeben werden kann. Das Folgende liefert also die gleichen Ergebnisse wie das vorherige Beispiel:

SELECT DATE('2050-08-21', '+1 years');

Ergebnis:

2051-08-21

Stunden, Minuten und Sekunden

Die DATETIME() Funktion ermöglicht es uns, Stunden, Minuten und Sekunden zu einem gegebenen datetime-Wert hinzuzufügen:

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";

Ergebnis:

Hours                Minutes              Seconds            
-------------------  -------------------  -------------------
2050-08-21 01:00:00  2050-08-21 00:01:00  2050-08-21 00:00:01

Und für Zeitwerte ist hier die 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";

Ergebnis:

Hours     Minutes   Seconds 
--------  --------  --------
01:00:00  00:01:00  00:00:01

Von Daten subtrahieren

Wir können auch DATE() verwenden zu subtrahieren:

SELECT DATE('2050-08-21', '-10 days');

Ergebnis:

2050-08-11

Wir verwenden lediglich den - signieren Sie das zweite Argument anstelle von + .