我有一张这样的表:
> desc my_tab
+-------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| host | varchar(128) | NO | | | |
| state | varchar(128) | YES | | NULL | |
| cdt | datetime | YES | | NULL | |
| mdt | timestamp | YES | | NULL | |
+-------+--------------+------+-----+---------+-------+
有许多行的日期> =' 31-jan-2018 00:00:00'。如果我运行select * from my_tab
我确实看到了它们。但是,当我运行此查询时:
select * from my_tab where cdt >= '31-jan-2018 00:00:00'
我没有结果。
我做错了什么?
答案 0 :(得分:2)
https://dev.mysql.com/doc/refman/5.7/en/date-and-time-types.html
虽然MySQL试图以多种格式解释数值,但日期部分必须始终以年 - 月 - 日的顺序给出(例如,' 98-09-04'),而不是在月份 - 通常在其他地方使用的日期或日期 - 月份订单(例如,' 09-04-98',' 04-09-98')。