我使用了Google,并尝试了几种比较日期的方法,但很遗憾没有按预期得到结果。我有记录的当前状态像下面:mysql与date_format的日期比较
mysql> select date_format(date(starttime),'%d-%m-%Y') from data;
+-----------------------------------------+
| date_format(date(starttime),'%d-%m-%Y') |
+-----------------------------------------+
| 28-10-2012 |
| 02-11-2012 |
| 02-11-2012 |
| 02-11-2012 |
| 03-11-2012 |
| 03-11-2012 |
| 07-11-2012 |
| 07-11-2012 |
我想比较的日期,因此这样做:
mysql> select date_format(date(starttime),'%d-%m-%Y') from data where date_format(date(starttime),'%d-%m-%y') >= '02-11-2012';
+-----------------------------------------+
| date_format(date(starttime),'%d-%m-%Y') |
+-----------------------------------------+
| 28-10-2012 |
| 02-11-2012 |
| 02-11-2012 |
| 02-11-2012 |
| 03-11-2012 |
| 03-11-2012 |
| 07-11-2012 |
| 07-11-2012 |
我认为,结果不应该包括'28 -10-2012' 。任何建议?提前致谢。
非常感谢,这正是我正在寻找:)。 –
@MahmoudGamal:你的编辑没有意义。使用Syntax'date'2012-11-02'' **指定日期文字是**有效的(实际上它是指定日期文字的SQL标准)。看到这里:http://sqlfiddle.com/#!2/d41d8/4020 –
@JonSkeet:你也可以使用SQL标准文字指定日期时间字面值:'timestamp'2012-11-02 00:00:00' '(而不是使用“普通”字符串)。 –