将 VARCHAR2 转换为 DATE

Convert a VARCHAR2 to DATE

我需要在同一 table 中将一列 (DATEOLD) 中的 VARCHAR2 转换为另一列 (DATENEW) 中的 DATE 格式。我的 VARCHAR2 格式为 YYYYMMDD Eg.20210728

UPDATE SUPPORT 
SET DATENEW = to_date(DATEOLD, 'MM/DD/YYYY')

好像不行?

您使用了错误的格式掩码,根据像 20210728 这样的字符串日期输入,应该是 YYYYMMDD。试试这个版本:

UPDATE SUPPORT
SET DATENEW = TO_DATE(DATEOLD, 'YYYYMMDD');