안녕하세요~


 SQLER에서 여러모로 많은 도움을 받고 있어서 먼저 이글을 읽어주신 분들에게 감사의 말씀을 드립니다.


제 Site에서 MSSQL, ORACLE을 주로 다루고 있는데 데이터가 하루에 약 2만건 정도 쌓이고 있는 데이터 베이스가 있습니다.


데이터 조회시 데이터량이 많다보니 점점 느려지는 이슈사항이 있어 데이터를 삭제 하려고 아래와 같이 SQL(ORACLE기준)을 짜보았는데


STG에서 테스트해본 결과 삭제 시간이 너무 오래 걸려 라이브에 적용을 못할 것 같네요..


제가 전문적으로 공부를 한게 아니라서 최적화된 SQL인지는 잘 모르겠네요..~


== 아 래 ==


delete from TABLEA
where NUNMBER_A

in
(select NUMBER_B from TABLEB
Where C_DATE between '2010-01-01 00:00:00' and '2016-12-31 23:59:59'
and UPPER(NAME_B) like 'UNKNOWN%' and BB is null)

and M_DATE between '2010-01-01 00:00:00' and '2016-12-31 23:59:59'
and LENGTH(C_NO) > 13 and C_S is null