如何将MYSQL中的混合日期转换为yyyy-mm-dd格式

Posted

技术标签:

【中文标题】如何将MYSQL中的混合日期转换为yyyy-mm-dd格式【英文标题】:How to convert mixed dates in MYSQL to yyyy-mm-dd format 【发布时间】:2020-12-28 23:16:07 【问题描述】:

我有一个名为 start_date 的文本类型列,其中包含 2 种不同日期格式的许多日期。一个是dd/mm/yyyy,另一个是yyyy-mm-dd

我需要将所有 dd/mm/yyyy 日期转换为 yyyy-mm-dd,然后将列数据类型设置为 date

UPDATE table_name SET start_date= str_to_date(start_date, '%d/%m/%Y');

到目前为止,我收到“错误代码 1411。不正确的日期时间值:函数 str_to_date 的‘2014-03-01’”

非常感谢任何帮助。 谢谢

【问题讨论】:

【参考方案1】:

一个是dd/mm/yyyy,另一个是yyyy-mm-dd

如果这是完整的格式列表,例如,使用

UPDATE table_name 
SET start_date= STR_TO_DATE(start_date, '%d/%m/%Y')
WHERE LOCATE('/', start_date);

【讨论】:

以上是关于如何将MYSQL中的混合日期转换为yyyy-mm-dd格式的主要内容,如果未能解决你的问题,请参考以下文章

从日期时间列中提取 YYYY-MM

在mysql中如何将时间的格式设置成yyyy-mm?

将数据工厂中的纪元时间转换为日期时间

如何将欧洲格式的字符串日期转换为有效的 mysql 日期格式?

如何在 MySQL 中使用 Case When 和 Str_to Date 将 Varchar 日期值转换为日期数据类型

hive怎么把日期转化成yyyy-mm格式?