在 Oracle 中将 MDDYYYY 和 MMDDYYYY 列转换为 MM-DD-YYYY SQL

Convert MDDYYYY and MMDDYYYY column to MM-DD-YYYY in Oracle SQL

我使用了 SELECT TO_DATE(INC_DATE, 'MMDDYYYY') FROM BASICINCIDENT2010;,但由于并非 inc_date 中的所有日期都采用相同的格式。导致Month not found的错误。

您需要使用 CASE 语句以不同方式解码日期字符串。类似于以下内容:

CASE
    WHEN LENGTH(inc_date) =  7 THEN TO_DATE(inc_date,  'MDDYYYY')
    WHEN LENGTH(inc_date) =  8 THEN TO_DATE(inc_date, 'MMDDYYYY')
    ELSE TO_DATE(inc_date, 'MM-DD-YYYY')
END AS fixed_date