如何选择mysql中具有不同日期格式的日期列?

时间:2014-12-10 07:03:53

标签: mysql

我的表有varchar数据类型的日期列,它接受不同的日期格式(dd-mm-yy,mm-dd-yy,yy-mm-dd),如何选择此表的记录。

  

姓名|日期

     

约翰| 2014年1月1日

     凯恩| 2014年1月12日

     

马修| 2014年12月1日

     杰克| 2014年1月1日

我接受这些格式(dd-mm-yy,mm-dd-yy,yy-mm-dd)到Date字段,我使用DATE_TIME它返回NULL并且无法使用STR_TO_TIME,因为该列具有不同的格式。我如何在日期列上使用where和select子句。

1 个答案:

答案 0 :(得分:0)

你应该有统一的日期格式。但是如果不可能,则需要再添加一列详细说明日期列的格式并处理应用程序或格式函数中的逻辑:

Name | Date  | DateFormat

John | 2014-01-01  |yyyy-mm-dd

Kane | 01-12-2014  |dd-mm-yyyy

Mathew| 12-01-2014 |mm-dd-yyyy

Jack | 2014-01-01  |yyyy-mm-dd