select * from table_my where my_date between '2014-07-23 00:00:00' and '2014-07-30 00:00:00' order by _id desc
这是我的查询,我想创建这个简单的日期比较查询,但不能正常工作。此查询不会添加任何内容。为什么?如何比较sqlite中的日期?
答案 0 :(得分:2)
使用strftime日期函数尝试以下查询。
SELECT * from table_my
WHERE strftime('%Y-%m-%d', my_date )
between
strftime('%Y-%m-%d', '2014-07-23')
and
strftime ('%Y-%m-%d', '2014-07-30');
修改强>
要使用小时和分钟,您可以尝试以下方式:
SELECT * from table_my
WHERE strftime('%Y-%m-%d %H:%M', my_date )
between
strftime('%Y-%m-%d %H:%M', '2014-07-23 11:22')
and
strftime ('%Y-%m-%d %H:%M', '2014-07-23 11:25');
答案 1 :(得分:0)
select * from table_my where my_date between '2014-07-30' and '2014-07-23' order by _id desc
使用上面的查询可能它会对你有用我在编码过程中也遇到了这样的问题我认为它会出现因为你使用较低值之前更大的价值
它可能会帮助你解决它
我刚刚刷了两个日期,我也删除了时间戳