2

我需要清理具有不同日期格式的表中的列。

例如:

%d-%b-%y, %Y-%B-%d, %d/%m/%Y, %d%b%y, %Y-%b-%d, %Y-%m-%d, %d %b %y, %m/%d/%Y

等等

现在我需要将所有日期值转换为统一格式,如**

%Y-%m-%d

**。

4

1 回答 1

2

您必须更新表数据。您可以使用 STR_TO_DATE() 函数转换为日期。

例如,

UPDATE table1 = STR_TO_DATE(column1, '%d-%b-%y') WHERE STR_TO_DATE(column1, '%d-%b-%y') IS NOT NULL;
UPDATE table1 = STR_TO_DATE(column1, '%Y-%B-%d') WHERE STR_TO_DATE(column1, '%Y-%B-%d') IS NOT NULL;
UPDATE table1 = STR_TO_DATE(column1, '%d/%m/%Y') WHERE STR_TO_DATE(column1, '%d/%m/%Y') IS NOT NULL;
UPDATE table1 = STR_TO_DATE(column1, '%d%b%y') WHERE STR_TO_DATE(column1, '%d%b%y') IS NOT NULL;

ETC......

于 2015-12-18T10:04:36.277 回答