Получите строки, Где Столбцу метки времени 2 дня

Эй парни, у меня есть таблица, которая имеет столбец с меткой времени в sqlite3. Это - значение по умолчанию к CURRENT_TIMESTAMP таким образом, что, когда строка вставляется, текущее время вставляется. Теперь я пытаюсь выбрать строки, которые были вставлены 2 дня назад или больше. Интересно, имеет ли это какой-либо смысл.

При чтении документации я придумал:

SELECT * FROM test WHERE timestamp < strftime('%s', '-2 days')

но по-видимому это неправильно. Я придумал этот запрос, потому что это подобно пути, которым я делаю тест в своем фактическом коде:

strtotime($timestamp) < strtotime("-2 days").

Но я надеялся, что sqlite3 включал некоторые встроенные проверки на этот тип ситуации.

Спасибо, я ценю любые ответы.

Править: Понятый это: SELECT * FROM test WHERE timestamp < date('now', '-2 days')

Я сохраню это открытым в случае, если кто-то может придумать что-то лучше.

5
задан Jorge Israel Peña 26 January 2010 в 00:19
поделиться

1 ответ

Так что, думаю, я разобрался, он отлично работает. Не знаю, лучший ли это способ, но кажется довольно простым и, как я уже сказал, работает:

SELECT * FROM test WHERE timestamp < date('now', '-2 days')
1
ответ дан 14 December 2019 в 19:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: