我需要更改包含许多日期格式(现在是 varchar)的列,例如
- 09-10-09
- 2009 年 1 月 1 日
- 19/01/09 等
放入具有日期格式(年、月、日)的列中。我尝试了这个查询,但给我带来了错误。
SELECT CASE
WHEN data_rep LIKE "%/%/%"
THEN str_to_date( data_rep, '%Y/%m/%d' )
WHEN data_rep LIKE "%.%.%"
THEN str_to_date( data_rep, '%Y.%m.%d' )
WHEN data_rep LIKE "%-%-%"
THEN str_to_date(data_rep, '%Y-%m-%d')
ELSE CAST(data_rep AS DATE)
END AS data_good,
FROM ....
错误:
SQL 错误(1064):您的 SQL 语法有错误。检查手册....当 data_rep 像 "%- %-%"
谢谢!