我在oracle中有一列具有不同日期和时间格式的date_timestamp,现在我在将它们转换为一种格式时遇到了问题。我可以问一下我该怎么处理吗?我不知道该栏中有多少日期和时间格式,可能有以下格式:
“MM/DD/YYYY hh:mi:ss”AM或此“YYYY-MM-DD hh:mi:ss AM”或此“YYY-MON-DD hh:mi:ss AM”以上。这是我的问题。该列的数据类型为varchar。我必须将它放在另一个具有日期数据类型的列中。我使用了以下代码:
UPDATE SCHOOL_BK
SET SCHOOL_TIMESTAMP = to_char(to_date(SCHOOL_TIMESTAMP,'MM/DD/YYYY hh:mi:ss AM'), 'YYYY-MM-DD hh:mi:ss AM')
WHERE VALIDATEPAYMENTDATE(SCHOOL_TIMESTAMP) = 'Invalid';
这是VALIDATESCHOOLDATE函数代码:
SELECT TO_DATE(SCHOOLDATE,'yyyy-MM-dd hh:mi:ss AM') INTO sDate FROM dual;
RETURN 'Valid';
EXCEPTION WHEN OTHERS THEN RETURN 'Invalid';
请帮我做这件事。