SQLite
 sql >> база данни >  >> RDS >> SQLite

Извадете години от дата в SQLite

В SQLite можем да използваме DATE() функция за изваждане на една или повече години от дата.

За стойности на дата и час можем да използваме DATETIME() функция.

Пример

Ето пример, който използва DATE() функция:

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

Резултат:

2049-08-21

Ако искаме да добавим сумата, бихме могли да заменим - с + , или го пропуснете напълно.

Можем да посочим годините в множествено или немножествено число. С други думи, year е еквивалентен на years :

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

Резултат:

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

Посочено в месеци или дни

Алтернативно можем да извадим години въз основа на няколко месеца или дни:

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

Резултат:

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

DATETIME() Функция

Този пример използва DATETIME() функция, за да направи същото:

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

Резултат:

2049-08-21 00:00:00

В този случай предадох стойност за дата, но функцията върна стойност за дата и час.

Ето още един пример, този път със стойност за дата и час:

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

Резултат:

2049-08-21 18:30:45

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да актуализирате/изтриете с елементи от две различни таблици SQLite

  2. Таблица за описание на SQLite

  3. SQLite JSON_EXTRACT()

  4. sqlLiteDatabase.query() за INNER JOIN

  5. Извиква ли се някога методът onUpgrade?