SQLite nie ma DATEADD()
funkcjonować jak SQL Server (lub ADDDATE()
lub ADD_DATE()
działa jak w niektórych innych DBMS), ale ma funkcję DATE()
funkcja, która może dodawać do wartości daty.
SQLite ma również funkcję DATETIME()
funkcja, która może dodawać do wartości daty i godziny (jak również TIME()
funkcja dla wartości czasu).
Przykład
Oto przykład pokazujący, w jaki sposób funkcja DATE()
SQLite funkcja może być użyta do dodania dziesięciu dni do daty:
SELECT DATE('2050-08-21', '+10 days');
Wynik:
2050-08-31
I możemy dodać miesiące w ten sam sposób:
SELECT DATE('2050-08-21', '+1 month');
Wynik:
2050-09-21
I tak samo jest z latami:
SELECT DATE('2050-08-21', '+1 years');
Wynik:
2051-08-21
Zauważ, że przedział można określić w liczbie mnogiej lub innej. Tak więc poniższe daje takie same wyniki jak w poprzednim przykładzie:
SELECT DATE('2050-08-21', '+1 years');
Wynik:
2051-08-21
Godziny, minuty i sekundy
DATETIME()
funkcja pozwala dodać godziny, minuty i sekundy do podanej wartości daty i godziny:
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";
Wynik:
Hours Minutes Seconds ------------------- ------------------- ------------------- 2050-08-21 01:00:00 2050-08-21 00:01:00 2050-08-21 00:00:01
A dla wartości czasu, oto TIME()
funkcja:
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";
Wynik:
Hours Minutes Seconds -------- -------- -------- 01:00:00 00:01:00 00:00:01
Odejmij od dat
Możemy również użyć DATE()
odjąć:
SELECT DATE('2050-08-21', '-10 days');
Wynik:
2050-08-11
Wszystko, co robimy, to użycie -
zaloguj się w drugim argumencie zamiast +
.