所以现在我正在使用这个查询:
select * from items where mydate = "2009-11-28"
并且由于我的日期存储为yyyy-mm-dd
格式的文本,这应该通过所有方式返回具有匹配日期的一行,对吧?如果没有,我做错了什么?
我试过这样做:
select * from items where releasedate between date("2009-11-28") and date("2009-11-29")
并且它工作正常,但总是只需要在一天之间使用似乎不对。
所以第二个查询工作正常,但第一个不行。有原因吗?我也尝试将日期放在date()
中,但这也没有用。
答案 0 :(得分:4)
尝试此查询,
select * from items where mydate like '2009-11-28%'
答案 1 :(得分:1)
您的insert语句是什么样的,表定义是什么样的?我敢打赌你需要使用'date'函数转换第一个查询字符串中的日期,而不是使用原始字符串。
此外,如果您要转换实际日期,请确保其完全“2009-11-28”。如果你做一般的日期参数,你可能不完全是在午夜,并且范围将是一种有效的查询方式,而不是固定的日期值。
答案 2 :(得分:0)
select * from items where mydate = "2009-11-28" // Here do not use double quotation
相反,试试这个
select * from items where mydate = '2009-11-28'