字段名date中有一个VARCHAR数据类型:

DATE

09282016
09272016

我想安排它:
DATE
20160928
20160927

在MySQL中如何做到这一点?

最佳答案

借助于STR_TO_DATEDATE_FORMAT功能,您可以实现这一点。
选择查询:

SELECT
DATE_FORMAT(STR_TO_DATE(your_date_column,'%m%d%Y'),'%Y%m%d')
FROM your_table;

更新查询:
UPDATE
your_table
SET your_date_column = DATE_FORMAT(STR_TO_DATE(your_date_column,'%m%d%Y'),'%Y%m%d');

演示:
SET @str := '09282016';

SELECT
DATE_FORMAT(STR_TO_DATE(@str,'%m%d%Y'),'%Y%m%d') AS output;

Output
20160928

日期应存储在date数据类型中。

10-06 11:09