Oracle 에서 Delete시 Join이 필요한 경우가 있다. 보통은 IN 을 이용해서 삭제하는데 이게 데이터가 많을 경우 속도가 느린 경우가 있다. IN 대신 다음 방법을 이용하자.

 

DELETE FROM TABLE_1 A

WHERE EXISTS (

  SELECT 1 FROM TABLE_2 B

  WHERE B.ID=A.ID

);

+ Recent posts