为什么这个查询在Mysql中不起作用?

Tha*_*yen 1 php mysql codeigniter

**我的英语不好,很抱歉.

我试图通过下面的查询获得两个日期的记录,但它返回一个空结果.

SELECT * FROM orders WHERE 
DATE(dateadd) = '2012-06-03' and DATE(dateadd) = '2012-06-04'
Run Code Online (Sandbox Code Playgroud)

更新:

dateadd是我的datetime列,默认为:0000-00-00 00:00:00

我使用DATE只获取日期(不包括时间).我希望在特定日期获取记录,而不是在两者之间.

谁能帮助我?

xda*_*azz 7

您应该使用OR来代替AND,日期怎么会2012-06-03,并2012-06-04在同一时间?

SELECT * FROM orders WHERE 
DATE(dateadd) = '2012-06-03' OR DATE(dateadd) = '2012-06-04'
Run Code Online (Sandbox Code Playgroud)

  • @GabrielSantos如果列是DATETIME,则必须由OP的代码暗示. (2认同)