MySQL 日期格式需要从数据类型更改为文本

问题描述 投票:0回答:1

我有一个从kaggle收集的数据集,其中有一列名为DOB,其数据类型为TEXT。示例 2000 年 1 月 30 日。

我想将该特定列的日期格式更改为 30-01-2000。

我该如何进行此更改。

我尝试使用将数据格式从文本更改为数据并使用 date_format(columnname,%d-%m-%y)

sql mysql date-format
1个回答
0
投票

使用

STR_TO_DATE()
解析当前格式,并使用
DATE_FORMAT()
生成新格式:

DATE_FORMAT(STR_TO_DATE(columnname, '%b %d,%Y'), '%d-%m-%Y'))

理想情况下,您不应将日期存储在文本列中,您应该使用

DATE
DATETIME
。格式化应该在 UI 中完成,而不是在原始数据中完成。它也更高效,因为它在内部存储为数字。

© www.soinside.com 2019 - 2024. All rights reserved.