使用mysql获取具有特定日期格式的5天回记录

时间:2017-09-27 16:15:52

标签: mysql database type-conversion

我想用mysql选择5天前的记录,但问题是我的日期列是varchar,格式如下yyyy-mm-dd 00:00:00 AM / PM。

如何将此日期格式转换为mysql日期并从5天后选择记录?

我的日期列名称是'date_time'

1 个答案:

答案 0 :(得分:0)

这是a job for STR_TO_DATE()

试试这个。

 ... WHERE DATE(STR_TO_DATE(date_time,'%Y-%m-%d %h:%i:%s %p')) = CURDATE() - INTERVAL 5 DAY

'%Y-%m-%d %h:%i:%s %p' DATE_FORMAT() string符合您的文字日期格式。

如果您必须搜索大量行,这将永远不会很快,因为它不是sargable。它无法利用索引。