SQLite выбирает строки, если временная метка совпадает с сегодняшней датой

#android #sqlite #android-sqlite

#Android #sqlite #android-sqlite

Вопрос:

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

Я запрашиваю базу данных SQLite следующим образом:

 // Tasks table name
private static final String TABLE_TASKS = "tasks";

// Tasks Table Columns names
private static final String KEY_ID = "id";
private static final String KEY_TIMESTAMP = "timestampGMT";
private static final String KEY_DESCRIPTION = "description";


String selectQuery = "SELECT  * FROM "   TABLE_TASKS   " WHERE "  KEY_TIMESTAMP ">=date('now', '-1 day')";
  

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

Как я могу выбрать только те строки в таблице, временная метка которых соответствует сегодняшней дате.

формат даты в базе данных: 2014-07-05 12:59:35.

Ответ №1:

работает ли это?

 date('now', 'start of day')
  

Комментарии:

1. Как я могу учитывать часовой пояс? Например, время пасхи — GMT -4. поэтому мне нужно что-то вроде date (‘now’, ‘start of day -4’), но это, очевидно, не работает

2. Понял ОТВЕТ: дата (‘now’, ‘start of day’, ‘localtime’)

Ответ №2:

Для локального часового пояса:

 date('now','localtime','start of day')