gpt4 book ai didi

mysql - 使用两种格式数据更新 mysql char 数据类型

转载 作者:行者123 更新时间:2023-11-29 06:51:04 24 4
gpt4 key购买 nike

我有一列“char”数据类型,有两种格式的记录,如下所示,

my_char_column
2030-05-12
2/8/2017
2012-12-13

问题是我想将类型数据更改为“日期”,格式为“Y-m-d”,如下所示,

my_char_column_new
2030-05-12
2017-08-02
2012-12-13

我尝试使用此查询但不起作用

UPDATE my_table SET my_char_column = DATE_FORMAT(my_char_column,'%Y-%m-%d') where my_char_column LIKE'%/%'

最佳答案

这是一个类似的答案: https://stackoverflow.com/a/12734990/8364246

这是我的方法:这里您需要的是某种可以在两种可能性之间进行选择的条件检查,IFNULL 将满足该目的。 DATE_FORMAT(STR_TO_DATE(my_char_column, '%Y-%m-%d') 这个转换“2030-05-12”这种类型的日期,而 DATE_FORMAT(STR_TO_DATE(my_char_column, '%d/%m/%Y') 会将“2/8/2017”这种类型的日期转换为您想要的格式,即 %Y-%m-%d。

select IFNULL(DATE_FORMAT(STR_TO_DATE(my_char_column, '%Y-%m-%d'), '%Y-%m-%d'), DATE_FORMAT(STR_TO_DATE(my_char_column, '%d/%m/%Y'), '%Y-%m-%d')) from your_table;

关于mysql - 使用两种格式数据更新 mysql char 数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47468438/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com