Условие даты не дает никаких результатов в запросе MySQL

У меня есть такая таблица:

> 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'

Я не получаю результатов.

Что я делаю неправильно?

1 ответ

Решение

https://dev.mysql.com/doc/refman/5.7/en/date-and-time-types.html

Хотя MySQL пытается интерпретировать значения в нескольких форматах, части даты всегда должны указываться в порядке год-месяц-день (например, '98-09-04'), а не в виде месяц-день-год или день-месяц- год заказов обычно используется в других местах (например, "09-04-98", "04-09-98").

Другие вопросы по тегам