[英]How to convert VARCHAR column cell values to date format?
我已将客户数据翻译成 DB 表,其中列类型 Varchar 中的单元格值很少,包含日期和少数不包含日期。 包含特定格式的 Date 的,需要转换为另一种格式,以便进一步用于数据分析工作。 我尝试了以下查询,但它显示了没有日期的单元格的错误。 我该如何解决这个问题?
基本上我想去掉实际时间和 append 000000 代替实际时间以及日期。
询问:
UPDATE Table1
SET C1 = DATE_FORMAT(C1,'%Y%m%d000000')
WHERE DATE_FORMAT(C1,'%Y%m%d%H%i%s') AND C1 IS NOT NULL;
错误:
代码:1292 截断不正确的日期时间值:“EVN”
您需要使用STR_TO_DATE()
来解析VARCHAR
列中的日期。
您可以使用正则表达式来测试列是否包含 MM/DD/YY 格式的日期。
UPDATE Table1
SET C1 = DATE_FORMAT(STR_TO_DATE('%m/%d/%y', C1), '%Y%m%d000000')
WHERE C1 RLIKE '^[01][0-9]/[0-3][0-9]/[0-9][0-9]$'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.