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

Изчислете броя на секундите от конкретна дата/час в SQLite

Ако трябва да изчислите броя на секундите, изминали от дадена дата и час, можете да използвате UNIXEPOCH() функция.

Имайте предвид, че тази функция е въведена в SQLite 3.38.0, така че ще работи само ако използвате SQLite 3.38.0 или по-нова версия.

Пример

Ето пример за демонстрация:

SELECT UNIXEPOCH() - UNIXEPOCH('2020-02-23 07:30:45');

Резултат:

64254554

В този пример върнах броя на секундите от 23.02.2020 г. 07:30:45.

Очевидно броят на секундите ще бъде различен, ако го стартираме отново по-късно:

SELECT UNIXEPOCH() - UNIXEPOCH('2020-02-23 07:30:45');

Резултат:

64254823

Брой секунди от началото на месеца

Ето пример, който връща броя секунди, изминали от началото на текущия месец:

SELECT UNIXEPOCH() - UNIXEPOCH(DATETIME('now', 'start of month'));

Резултат:

605380

Тук използваме DATETIME() функция заедно с now аргумент за връщане на текущата дата и час. Освен това използваме start of month модификатор, за да посочите началото на месеца.

Следващият пример разширява предишния. Показва действителните включени дати, както и секундите между тях:

SELECT 
    DATETIME('now', 'start of month') AS "Start of Month",
    DATETIME('now') AS "Now",
    UNIXEPOCH() - UNIXEPOCH(DATETIME('now', 'start of month')) AS "Seconds";

Резултат:

Start of Month       Now                  Seconds
-------------------  -------------------  -------
2022-03-01 00:00:00  2022-03-08 00:12:04  605524 

Можете също да използвате start of day и start of year за да върнете секундите от началото на деня или годината.


  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 в режим TCL

  2. Показване на напредъка, докато doInbackground

  3. SQLite ПОКАЖЕ ТАБЛИЦИ Еквивалент

  4. SQLite ВАКУУМ

  5. Таблицата не се създава sqlite android