상세 컨텐츠

본문 제목

Join과 Set 연산

빅데이터/Database_MySQL

by datasa 2024. 5. 14. 10:25

본문

 

 

 

 

 

 

 

 

▶ Join 연산자와 집합(Set) 연산자

1. Join 연산자

MySQL Join 연산자는 두 개 이상의 테이블을 연결하여 데이터를 결합하는 데 사용됩니다. 다양한 종류의 Join 연산자가 있으며, 각각 다른 방식으로 테이블을 연결합니다.

 

INNER JOIN: 두 테이블에서 공통된 열 값을 기준으로 행을 연결합니다. 모든 결과 행을 포함합니다.

SELECT *
FROM table1
INNER JOIN table2
ON table1.column1 = table2.column2;

 

 

LEFT JOIN: 왼쪽 테이블의 모든 행을 결과에 포함하고, 오른쪽 테이블에서 일치하는 행이 있는 경우 해당 열 값을 추가합니다.

SELECT *
FROM table1
LEFT JOIN table2
ON table1.column1 = table2.column2;
 

RIGHT JOIN: 오른쪽 테이블의 모든 행을 결과에 포함하고, 왼쪽 테이블에서 일치하는 행이 있는 경우 해당 열 값을 추가합니다.

SELECT *
FROM table1
RIGHT JOIN table2
ON table1.column1 = table2.column2;

 

 

FULL OUTER JOIN: 두 테이블의 모든 행을 결과에 포함하고, 일치하는 행이 있는 경우 해당 열 값을 추가합니다.

SELECT *
FROM table1
FULL OUTER JOIN table2
ON table1.column1 = table2.column2;
 
 

2. 집합(Set) 연산자

MySQL 집합 연산자는 두 개 이상의 데이터 세트를 조합하거나 비교하는 데 사용됩니다. 대표적인 집합 연산자로는 UNION, UNION ALL, INTERSECT, EXCEPT 등이 있습니다.

 

UNION: 두 개의 데이터 세트를 합집합으로 연결합니다. 중복된 행은 제거됩니다.

SELECT *
FROM table1
UNION
SELECT *
FROM table2;

 

 

UNION ALL: 두 개의 데이터 세트를 합집합으로 연결합니다. 중복된 행도 포함됩니다.

SELECT *
FROM table1
UNION ALL
SELECT *
FROM table2;

 

 

INTERSECT: 두 개의 데이터 세트에서 공통된 행만 선택합니다.

SELECT *
FROM table1
INTERSECT
SELECT *
FROM table2;

 

 

EXCEPT: 첫 번째 데이터 세트에서 두 번째 데이터 세트의 행을 제외한 행만 선택합니다.

SELECT *
FROM table1
EXCEPT
SELECT *
FROM table2;
 

3. Join 연산자 vs. 집합 연산자

  • Join 연산자는 테이블을 연결하여 데이터를 결합하는 데 사용됩니다.
  • 집합 연산자는 데이터 세트를 조합하거나 비교하는 데 사용됩니다.

'빅데이터 > Database_MySQL' 카테고리의 다른 글

MySQL-DDL 명령어  (0) 2024.05.14
MySQL 함수 - 다행(그룹)함수  (0) 2024.05.09
MySQL 함수-단일행 함수  (0) 2024.05.08

관련글 더보기

댓글 영역