改变日期的格式不同的格式

问题描述:

我使用的MySQL,我有一个名为DATE_1在表中的列其为varchar(255),列由日期改变日期的格式不同的格式

这是在格式的“2014年6月25日”我想要将它们转换为'25 -06-2014'即DD-MM-YYYY

该怎么做?

+1

作为一个方面说明,将日期存储为varchar根本不是一个好设计。 – 2014-08-29 15:28:52

+0

我将数据库从sql服务器转换为我的sql,首先我需要清理它然后我将它转换成日期格式 – mb1987 2014-08-29 15:34:25

使用STR_TO_DATE()DATE_FORMAT()

SELECT DATE_FORMAT(STR_TO_DATE(date_1, '%M %e,%Y'), '%d-%m-%Y') AS new_date 

DATE_FORMAT()所有可以与这些功能所使用的格式说明。因为它是MySQL中的本地格式,所以您应该将日期作为实际日期存储在数据库中,这意味着您可以使用很多工具来使它们更容易处理。这包括将它们转换为您想要检索的任何格式,并对它们进行排序和搜索。

最好的选择是不将它们存储为varchar,而是将它们以原始格式存储为datedatetime。然后,您可以选择丰富的操作员以任何方式对它们进行格式设置,您可以轻松地思考并支持对列进行丰富的查询操作。