我试图查询一种从 - 到目前为止。 例如20-01-2010至20-02-2010。这应该包括提到的日期。
我尝试了以下查询但没有效果。
select *
from [tableName]
where date >= '20-01-2010'
AND date <= '20-02-2010'
但日期等于20-02-2010的日期未显示。我不知道为什么。
select *
from [tableName]
where date between '20-01-2010'
AND '20-02-2010'
结果中未包含上述日期。我希望它被包含在结果中。
请帮忙。
提前谢谢! :)答案 0 :(得分:1)
请确保您的表中没有日期时间值,时间值不是0 。在这种情况下,与您提供的上限日期相比,没有一个会更少或相等。
答案 1 :(得分:0)
SELECT date
FROM `test_table`
WHERE date >= '2010-04-01'
AND date <= '2010-04-30';
实际上在mysql中工作。请注意,DATE type
字段的标准结构为YYYY-MM-DD
。
答案 2 :(得分:0)
感谢所有回复。 我解决了这个问题。
下面的查询不起作用的原因是因为日期字段的值是hh:mm:ss,因为它是datetime。如果你比较普通日期,时间部分将为0.这就是为什么数据w / date '20 -02-2010'没有显示在我的结果集中,因为数据有hh:mm:ss不等于'00 :00:00.000'
SELECT * FROM[tableName] WHERE date >= '20-01-2010' AND date <= '20-02-2010'
下面的查询现在有效。刚刚添加了时间参数
SELECT* FROM [tableName] WHERE date >= '20-01-2010' AND date <= '20-02-2010 23:59:59.000'
欢呼声