sql

교집합 INTERSECT / 차집합 MINUS

임이레 2023. 7. 22. 10:49

mysql 에서는 제공하지 않기 때문에,  JOIN 을 활용한다. 

 

SELECT [컬럼이름]

FROM [테이블 A이름] AS A

INNER JOIN [테이블 B이름] AS B 

ON A.[컬럼1 이름] = B.[컬럼1 이름] AND ... AND A.[컬럼 n 이름] = B.[컬럼n 이름];

 

* 교집합을 확인 하고 싶은 컬럼은 모두 다 기준으로 두고 합쳐 주어야 한다. (단순 INNER JOIN 과의 차이점) 


 

 

이 또한 LEFT JOIN 을 활용한다. 

 

SELECT [컬럼 이름]

FROM [테이블 A 이름] AS A

LEFT JOIN [테이블 B 이름] AS B 

ON A.[컬럼1 이름] = B.[컬럼 1 이름] AND ... AND A.[컬럼n 이름] = B.[컬럼n 이름]

WHERE B.[컬럼 이름] IS NULL;