如何使用大于运算符的日期?

Cli*_*n J 96 mysql date operators

不知道这里发生了什么.这是查询,直接来自phpMyAdmin:

SELECT * FROM `la_schedule` WHERE 'start_date' >'2012-11-18';
Run Code Online (Sandbox Code Playgroud)

但我一直在返回表中的所有记录,包括那些开始日期为2012-11-01的记录.是什么赋予了?

Joh*_*Woo 173

你已经start_date使用单引号使其成为字符串,backtick而是使用

SELECT * FROM `la_schedule` WHERE `start_date` > '2012-11-18';
Run Code Online (Sandbox Code Playgroud)

  • 如果它的时间戳会发生什么? (2认同)

Kne*_*ZOD 21

在语句中,您将一个名为start_date的字符串与时间进行比较.
如果start_date是一列,它应该是

 
  SELECT * FROM `la_schedule` WHERE start_date >'2012-11-18';
 

(没有撇号)或


SELECT * FROM `la_schedule` WHERE `start_date` >'2012-11-18';

(带反叛).

希望这可以帮助.


Fai*_*tak 11

试试这个.

SELECT * FROM la_schedule WHERE `start_date` > '2012-11-18';
Run Code Online (Sandbox Code Playgroud)


Sur*_*rai 5

我已经尝试过,但在研究发现下面的解决方案后,上面的方法不起作用。

SELECT * FROM my_table where DATE(start_date) > '2011-01-01';
Run Code Online (Sandbox Code Playgroud)

参考号