Я пытаюсь запросить то, что произошло между сегодняшним днем и вчера. К примеру, на 17 июня 2016 года она будет выглядеть следующим образом:Запрос между датами в SQLITE
SELECT * FROM Inspection_Log WHERE date_time BETWEEN '2016-6-16' AND '2016-6-17'
Но в эти дни являются относительными, и это не будет работать говорить завтра, или на самом деле каждый раз. Итак, я столкнулся с страницей this, где мне сейчас говорят, что я использую DATE
, так как это всего лишь вежливая обертка вокруг strftime
.
Но вот мой текущий вопрос:
Этот запрос работает:
>SELECT COUNT(*) FROM Inspection_Log WHERE date_time BETWEEN '2016-6-16' AND '2016-6-17'
535
Но когда я использую date('yada', '+1 day')
>SELECT COUNT(*) FROM Inspection_LOG WHERE date_time BETWEEN '2016-6-16' AND DATE('2016-6-16','+1 day')
0
Так что я стараюсь с strftime
>SELECT COUNT(*) FROM Inspection_LOG WHERE date_time BETWEEN '2016-6-16' AND strftime('%Y-%M-%D','2016-6-16','+1 day')
0
Поэтому я стараюсь с datetime
>SELECT COUNT(*) FROM Inspection_LOG WHERE date_time BETWEEN '2016-6-16' AND datetime('2016-6-16','+1 day')
0
Порывшись в это вот то, что я вижу ВЫБЕРИТЕ времени ('сейчас') '2016-06-24' выбрать дату ('теперь') «2016-06 -24' SELECT, дата ('теперь', '- 1 день') '2016-06-23' SELECT, дата ('2016-6-24', '- 1 день') NONE
Что я делаю неправильно?
Я вставил данные неправильно изначально, так что я запрашивая 'Text' поля в качестве' date' полей, которые не дали никаких результатов. Даже этот столбец был объявлен как «ДАТА» ... это действительно «ТЕКСТ», поскольку речь идет о sqlite3. – Valarauca