sql >> Databáze >  >> RDS >> SQLite

Odečtěte roky od data v SQLite

V SQLite můžeme použít DATE() funkce odečíst jeden nebo více let od data.

Pro hodnoty datetime můžeme použít DATETIME() funkce.

Příklad

Zde je příklad, který používá DATE() funkce:

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

Výsledek:

2049-08-21

Pokud bychom chtěli přidat částku, mohli bychom nahradit - pomocí + nebo jej úplně vynechat.

Roky můžeme specifikovat v množném i nemnožném čísle. Jinými slovy year je ekvivalentní years :

SELECT 
    DATE('2050-08-21', '-5 year') AS year,
    DATE('2050-08-21', '-5 years') AS years;

Výsledek:

year        years     
----------  ----------
2045-08-21  2045-08-21

Uvedeno v měsících nebo dnech

Alternativně můžeme odečítat roky na základě počtu měsíců nebo dnů:

SELECT 
    DATE('2050-08-21', '-12 months') AS "12 Months",
    DATE('2050-08-21', '-365 days') AS "365 Days";

Výsledek:

12 Months   365 Days  
----------  ----------
2049-08-21  2049-08-21

DATETIME() Funkce

Tento příklad používá DATETIME() funkce pro totéž:

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

Výsledek:

2049-08-21 00:00:00

V tomto případě jsem předal hodnotu data, ale funkce vrátila hodnotu datetime.

Zde je další příklad, tentokrát s hodnotou datetime:

SELECT DATETIME('2050-08-21 18:30:45', '-1 year');

Výsledek:

2049-08-21 18:30:45

  1. 5 způsobů aktualizace dat pomocí dílčího dotazu v Oracle SQL

  2. Nasazení PostgreSQL na kontejneru Docker

  3. Spusťte SQL z dávkového souboru

  4. Advanced MySql Query:Aktualizace tabulky informacemi z jiné tabulky