我的mytable中有以下几行

date_start
-----------
2011-09-20 13:00:00
2011-10-01 13:14:00
2011-10-09 13:16:00
2011-09-27 15:00:00
2011-09-30 14:04:00
2011-10-03 14:00:00



我有这个查询:

SELECT date_start
FROM `mytable`
WHERE date_start >= "2011-09-19"
AND date_start <= "2011-09-30"
LIMIT 0 , 30


这里的问题是它仅输出:

2011-09-20 13:00:00
2011-09-27 15:00:00


我期望这个结果:

    2011-09-20 13:00:00
    2011-09-27 15:00:00
    2011-09-30 14:04:00


因为如果我们查看查询,则应将其作为结果:2011-09-30 14:04:00
我在这里做错了什么?

我还在mysql中使用了BETWEEN,但输出仍然相同。

任何帮助将不胜感激和奖励。

谢谢!

最佳答案

假定作为日期时间的日期具有00:00:00小时:分钟:秒部分。因此,实际上2011-09-30 14:04:00> = 2011-09-30。

要执行您想要的操作,请尝试:

SELECT date_start
FROM `mytable`
WHERE date(date_start) >= "2011-09-19"
AND date(date_start) <= "2011-09-30"
LIMIT 0 , 30

10-07 19:38
查看更多