본문 바로가기
  • 오늘도 한걸음. 수고많았어요.^^
  • 조금씩 꾸준히 오래 가자.ㅎ
IT기술/DB

[Mysql] LEFT JOIN 이용하는방법. (NOT IN 대체하기)

by 미노드 2023. 7. 31.

MySQL에서 특정 항목들을 제외시킬 때 주로 사용하는 명령어가 NOT IN 인데,
속도가 만족스럽지 못할때가 있다..
이때는 LEFT JOIN명령어를 대신 사용할 수 있다.

예를 들어,
select * from cdr where calldate not in (
select calldate from cdr 
where disposition = 'ANSWERED')
 
의 경우는 다음과 같이 바꿀 수 있다.
select t1.calldate from cdr as t1 
left join (
select calldate from cdr 
where disposition = 'ANSWERED') as t2 
on t1.calldate=t2.calldate 
where t2.calldate is null