단순하게 하면 되는줄 알았는데 단순한 애가 아니었네...

 

suppliers를 SUPER SET 이라고 정의하고

subquery의 orders를 SUB SET이라고 정의하면

 

suppliers를 A orders 를 B라고 정의하면

NOT EXISTS는 A-B 차집합 결과를

EXISTS는 A∩B교집합 결과를 돌려준다.

조금은.. WHERE IN과 다르게 비교 조건이 subquery에 들어가는 느낌이라고 해야하려나?

대신.. NOT IN으로 하면 결과가 30분 넘게 걸리는게 몇초도 안되서 바로 결과가 나오니 좋다.

SELECT *

  FROM suppliers

 WHERE NOT EXISTS (SELECT * FROM orders

                            WHERE suplliers. supplier_id = orders.supplier_id);

[링크 : https://20140501.tistory.com/57]

Posted by 구차니