JOIN

관련 있는 데이터를 가지고 있는 둘 이상의 테이블을 결합하기 위해 사용
 INNER JOIN : 일반적인 JOIN, INNER 는 생략 가능, 두 테이블에서 동일하게 가지고 있는 데이터들을 모아서 하나의 테이블인 것처럼 출력(교집합)
LEFT OUTTER JOIN : OUTTER는 생략 가능, 두 테이블 중 왼쪽에 있는 테이블의 모든 내용을 출력하고, 오른쪽에 있는 테이블의 내용 중 왼쪽 테이블에 해당하는 내용을 출력
RIGHT OUTTER JOIN : OUTTER는 생략 가능, 두 테이블 중 오른쪽에 있는 테이블의 모든 내용을 출력하고, 왼쪽에 있는 테이블의 내용 중 오른쪽 테이블에 해당하는 내용을 출력
CROSS JOIN : 양쪽 테이블의 모든 내용을 출력
SELF JOIN : 왼쪽 테이블 및 오른쪽 테이블을 하나의 테이블로 구성하여 결과를 출력하는 방식

 <사용법>
 SELECT 테이블명1.컬럼명1, 테이블명1.컬럼명2, ...,
테이블명2.컬럼명1, 테이블명2.컬럼명2, ...
FROM 테이블명1

JOIN 테이블명2
ON 테이블명1.동일한데이터컬럼 = 테이블명2.동일한데이터컬럼
AND 조건식

JOIN으로 두 테이블의 모든 컬럼 출력

SELECT * FROM employees
JOIN salaries
ON employees.emp_no = salaries.emp_no;


두 테이블에서 필요한 컬럼만 출력

SELECT employees.emp_no, employees.birth_date,
employees.first_name, employees.last_name, employees.gender, 
employees.hire_date, salaries.salary, salaries.from_date, salaries.to_date
FROM employees
JOIN salaries
ON employees.emp_no = salaries.emp_no;



AS 명령어로 별칭을 사용한 JOIN

SELECT e.emp_no, e.birth_date, e.first_name, e.last_name, 
e.gender, e.hire_date, s.salary, s.from_date, s.to_date
FROM employees AS e
JOIN salaries AS s
ON e.emp_no = s.emp_no
AND e.emp_no = 10009;

'백엔드 > 데이터베이스1' 카테고리의 다른 글

서브쿼리  (0) 2022.11.24
기본 문제 풀이  (0) 2022.11.24
BETWEEN, 오름차순, AS  (0) 2022.11.24
IN, OR, LIKE  (0) 2022.11.24
WILD CARD, LIKE  (0) 2022.11.24

+ Recent posts