我有一個varchar2字段只包含日期(由於任何未知原因),但有些寄存器不是「to_date」格式。在Oracle中的日期格式更新不起作用
我需要利用日期格式進行查詢[例如: SELECT * FROM users_table其中status_date>「2014年1月21日」],但出現消息「ORA-01861:文字不匹配格式字符串「。
所以我想我會更新使用此代碼的日期格式的一切:
update users_table set status_date = to_date(status_date, 'dd-mm-yy') where status_date > '2014-01-21';
它執行,但沒有寄存器發生了變化。請問我該如何解決這個問題?
使用日期數據類型向表中添加新列。儘可能從varchar列更新它。放下你的varchar列並把它當作一個教訓,告訴你爲什麼你應該總是使用合適的數據類型。 –