조회 결과가 예상보다 많은 30건이 조회되었습니다. 어떻게 이런 결과가 나온 걸까요? 사원정보 테이블의 총 로우 수는 6건이고 부서정보 테이블의 총 로우 수는 5개인데, 두 테이블을 조인하되 조인 조건을 주지 않았으므로 가능한 모든 조합에 대한 데이터가 조회된 것입니다. 즉, 6 * 5 = 30건이 조회된 것이죠. 카티션 곱은 조인의 범주에 들긴 하지만 실제로 사용하는 경우는 매우 드뭅니다. 사실 조인이란 것이 두 테이블에서 조인 컬럼을 사용해 데이터를 조회하는 것인데, 조인 컬럼 자체를 사용하지 않는 카티션 곱은 아주 특별한 경우를 제외하고 사용할 일이 없습니다. 하지만 카티션 곱의 결과는 흔히 볼 수 있을 거예요. SQL을 처음 접하는 사람의 흔한 실수 중 하나가 조인 조건을 빼고 조인하는 경우인데, 이때 결과가 바로 카티션 곱입니다. 만약 카티션 곱으로 수행된 결과를 보게 된다면 일단 쿼리에 조인 조건이 빠졌는지 찾아보세요.
지금까지 조인에 대해 살펴봤습니다. 이 장에서 알아본 내부 조인, 외부 조인 외에도 안티 조인, 세미 조인이 있는데, 이는 서브쿼리를 사용하는 조인이므로 다음 장에서 서브쿼리를 다루면서 설명하도록 하죠.