MySQL日期查询问题

时间:2009-03-26 13:43:15

标签: sql mysql

我对MySQL日期和查询有疑问。

首先

SELECT * FROM post WHERE DATE(Post_Date)="2009-03-25" 

返回0结果

SELECT * FROM post WHERE Post_Date="2009-03-25" 

返回71结果

SELECT * FROM post WHERE Post_Date>="2009-03-25" 

返回379结果

我了解返回71结果的第二个查询仅匹配2009-03-25 00:00:00作为Post_Date的帖子,第三个查询显示所有内容。但为什么第一个查询显示0结果?请帮忙!我检查了MySQL cnf,date_format设置为%Y-%m-%d

第二次

SELECT * FROM post WHERE DATE(Post_Date)="2009-03-25" 

WINDOWS上的RETURNS结果!

SELECT * FROM post WHERE DATE(Post_Date)="2009-03-25" 

Linux中没有结果!

任何指针都会有所帮助! 是否需要更改配置文件以使其在Linux中运行?

2 个答案:

答案 0 :(得分:1)

诊断步骤:在每个系统上运行查询SELECT DATE('2009-03-25 08:30:00')。结果可能会告诉你发生了什么。 (可能是版本问题。)

答案 1 :(得分:1)

不确定第一部分的内容,但第二部分:您是否检查确保Windows和Linux上的服务器在各自的数据库中具有相同的数据?如果您确定它们是,那么您可能想要检查Linux数据库是否给出该年或年 - 月的任何结果,而不仅仅是特定的年 - 月 - 日。