在 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
我使用了 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