读书人

SQL查询中lt;=条件有关问题

发布时间: 2012-02-09 18:22:27 作者: rapoo

SQL查询中<=条件问题。
我有这样一条SQL

SELECT ID,CREATE_TIME FROM USERS WHERE STATUS > 0 AND CREATE_TIME > = '2007-06-18 ' AND CREATE_TIME <= '2007-06-19 ' ORDER BY CREATE_TIME DESC

但是查询出的结果只包含18号这天的纪录,而19号的违背包含,貌似 " <= "中的“=”没起作用。

尝试换用 BETWEEN也是一样的结果,不包含 19号的纪录。

这是为什么?

[解决办法]
可能因为数据中含有时分秒,这样就不能直接 <= '2007-06-19 ',而应该是

< '2007-06-20 '

这样就包括19号全天的数据了。
[解决办法]
用 < '2007-06-20 '



<= '2007-06-19 59:59 '

更准确。
[解决办法]
DATE_ADD( '2007-06-18 ', INTERVAL 1 DAY)这样就加一了。

读书人网 >Mysql

热点推荐