SQLite, эквивалентный ИНТЕРВАЛ - PullRequest
4 голосов
/ 07 октября 2011

Я пытаюсь перевести запрос PostgreSQL:

SELECT * FROM mytable
WHERE last_check_timestamp + (INTERVAL '1 seconds')*interval_seconds <= now()

к эквивалентному запросу в SQLite.

Я застреваю на том, как динамически создавать даты / интервалы на основе столбцов таблицы. Что эквивалентно «INTERVAL» в SQLite?

1 Ответ

6 голосов
/ 07 октября 2011

См. функции даты и времени для SQLite. Вы можете сказать это, чтобы добавить 1 секунду к значению даты и времени, например:

select datetime(last_check_timestamp, '+1 second')

Полная реализация вашего примера запроса может выглядеть примерно так:

select * from mytable
where datetime(last_check_timestamp,
         '+' || interval_seconds || ' second') <= datetime('now','localhost');

Демо: http://www.ideone.com/lbp3G

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...