[sql] 데이터의 교집합을 계산하는 스칼라 함수 (INTERSECT 등)
데이터베이스 쿼리에서 교집합을 계산하고 싶을 때, INTERSECT
와 관련된 스칼라 함수를 사용할 수 있습니다. 이 함수는 두 개 이상의 SELECT 문의 결과를 비교하여 공통된 행을 반환합니다.
INTERSECT
사용하기
INTERSECT
키워드는 두 개 이상의 SELECT 문의 결과를 비교하는 데 사용됩니다. 예를 들어, 다음과 같이 두 개의 SELECT 문을 이용하여 교집합을 찾을 수 있습니다.
SELECT column1, column2 FROM table1
INTERSECT
SELECT column1, column2 FROM table2;
위의 예제에서는 table1
과 table2
의 결과에서 공통된 행을 반환하게 됩니다.
INNER JOIN
을 이용한 교집합 계산
또 다른 방법은 INNER JOIN
을 이용하여 교집합을 계산하는 것입니다. 두 테이블 간에 조건을 적용하여 공통된 결과를 얻습니다.
SELECT t1.column1, t1.column2
FROM table1 t1
INNER JOIN table2 t2 ON t1.column1 = t2.column1
AND t1.column2 = t2.column2;
위의 쿼리는 table1
과 table2
사이에서 column1과 column2의 값이 동일한 행을 반환하게 됩니다.
정리
교집합을 계산하는 데 INTERSECT
또는 INNER JOIN
을 사용할 수 있습니다. 각각의 방법은 목적에 따라 적합한 방법을 선택할 수 있습니다.
참고문헌: