比较mysql中存储在varchar中的日期

时间:2014-04-05 12:28:23

标签: php mysql date

我遇到一个问题, 我正在尝试获取日期小于当前日期的所有记录, 但问题是日期存储在 15-Nov-13 甲酸(在varchar(20)中)

现在如何比较它?

我试过

SELECT date_format( str_to_date( `ENDdatetime` , '%d/%M/%y' ) , '%Y%m' ) , `CLIENT_PROMO_ID`
FROM `tb_um_promo_schedule`
ORDER BY `CLIENT_PROMO_ID` DESC
LIMIT 0 , 30

但它返回NULL,

那该怎么办?

1 个答案:

答案 0 :(得分:2)

您在问题中提供的格式(15-Nov-13)与您尝试转换的格式不符:

'%d/%M/%y'

不应该

'%d-%M-%y'

代替?

SELECT date_format( str_to_date( `ENDdatetime` , '%d-%M-%y' ) , '%Y%m' ) , `CLIENT_PROMO_ID`
FROM `tb_um_promo_schedule`
ORDER BY `CLIENT_PROMO_ID` DESC
LIMIT 0 , 30