조인 연산자는 " 두 개 이상의 테이블을 연결하여 데이터를 검색하는 방법 " 이다.
쉽게 말해서 아예 두 테이블을 '가로로' 연결한 뒤에 연산을 처리한다.
그래서 '열'이 늘어난다.
대표적인 종류는 다음과 같다.
- (INNER) JOIN : <교집합> 두 테이블 모두에 공통된 행만 가져옴.
- LEFT (OUTER) JOIN : 왼쪽 테이블 행은 모두 가져오고, 오른쪽은 공통된 것만 가져옴. 나머지는 null값.
- RIGTH (OUTER) JOIN : 오른쪽 테이블 행은 모두 가져오고, 왼쪽은 공통된 것만 가져옴. 나머지는 null값.
- FULL (OUTER) JOIN : <합집합> 각 테이블의 모든 행을 가져옴. 일치하지 않는 내용은 null값.
집합 연산자는 " 2개 이상의 질의 결과를 하나의 결과로 만들어 주는 방법 " 이다.
즉 이미 연산된 두 개의 결과를 '세로로' 연결하는 것이다.
그래서 '행'이 늘어난다.
대표적인 종류는 다음과 같다.
- UNION : <합집합> 연산된 결과 중, 중복 행을 제거한 쿼리 결과를 반환.
- UNION ALL : 연산된 결과 중, 중복 행을 포함한 모든 쿼리 결과를 반환.
MySQL 에서는 INTERSECT (교집합)과 MINUS (차집합) 연산이 없다.
따라서 JOIN 연산자와 UNION 연산자를 이용해서 교집합과 차집합 연산을 이끌어내야 한다.
'데이터 베이스' 카테고리의 다른 글
Ch.3 데이터베이스 시스템 [데이터베이스 개론 도서] (0) | 2023.04.20 |
---|---|
[MySQL] 데이터베이스, 테이블, 열 정보를 찾는 쿼리문 (0) | 2022.10.29 |
[MySQL] 두 날짜의 차이를 구하라 (feat. DATEDIFF, TIMESTAMPDIFF) (0) | 2022.09.27 |
[MySQL] 날짜와 시간 포멧 정하기 (feat. DATE_FORMAT) (1) | 2022.09.26 |
[MySQL] 여러가지 NULL 처리 방법 (feat. IF , IFNULL , COALESCE , CASE) (0) | 2022.09.26 |