SQLite: простой SQL - где в поле отметки времени - PullRequest
0 голосов
/ 14 ноября 2011

У меня есть таблица с вызовом поля отметки времени EVENT_TS (поэтому она хранится как отметка времени по Гринвичу)

Я хочу запрос, который будет извлекать записи на основе EVENT_TS, а запрос возвращает только сегодняшний результат.

Вот как выглядит запись:

EVENT_DESC | EVENT_TS
-----------+--------------------
event1     | 2011-11-14 11:22:00
event2     | 2011-11-11 12:22:00

ТАК, если сегодня 14 ноября, я хочу, чтобы он возвращал только сегодняшнее событие, которым является событие1.

Ответы [ 3 ]

1 голос
/ 14 ноября 2011

Что-то вроде этого должно сработать (при условии, что часовой пояс вашей системы правильно настроен):

select *
from your_table
where date(event_ts, 'localtime') = date(current_timestamp, 'localtime')
0 голосов
/ 14 ноября 2011

Предполагая, что тип этого поля - TEXT (SQLite может хранить дату как TEXT, INTEGER или REAL):

 SELECT * FROM Event WHERE Event_TS LIKE '2011-11-14%'

Этот запрос сможет использовать и индексировать Event_TS, если вы его создали.

0 голосов
/ 14 ноября 2011

Предполагая, что это сервер sql:

select * from event
where convert(varchar(10),event_ts ,101) = convert(varchar(10),getdate(),101)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...