ORACLEのテーブルで6か月を超えるすべてのレコードを削除しようとしています。6ヶ月過去のレコードを削除する
私は現在、このテーブル内の文字列フォーマットは'12/21/2015 12:00:00 AM'
ある
delete from table t
where to_date(substr(t.DATE_SENT,1,10),'MM/DD/YYYY') < add_months(trunc(sysdate), -6);
を持っています。
NOTEこれはDATETIMEで、varchar2ではないはずですが、varchar2であることがわかっていますので、今のところ回避策を見つけようとしています。
このクエリは、*多少の選択のために働くようだが、その後任意の助けをいただければ幸いSQL
Error: ORA-01830: date format picture ends before converting entire input string
でクラッシュ。
データには、2015年1月1日の値があると思います。 –
日付の書式が 'select * from table 'と一致しないレコードを見つけようとすると、regexp_like(date_sent、'^[[digit:]] {1,2}/[[:digit:]] {1、 2}/[[:digit:]] {4} ') 'となります。 –