~홍~

JOIN 쿼리 본문

DB

JOIN 쿼리

~홍~ 2021. 4. 7. 11:23
728x90

조인(JOIIN)이란 ? 

두개 이상의 테이블이나 데이터베이스를 연결하여 데이터를 검색하는 방법.  

자신이 검색하고 싶은 컬럼이 다른 테이블에 있을 경우 주로 사용하며 여러개의 테이블을 하나의 테이블 처럼 활용하는 방법.  

 

SQL JOIN :

- INNER JOIN, 

- LEEF JOIN, 

- RIGHT JOIN, 

- FULL OUTER JOIN 

 

- CROSS JOIN 

- SELF JOIN 

 

[ 참조 ] https://www.w3schools.com/sql/sql_join.asp

 

SQL JOIN  

- JOIN 절은 두개 이상의 테블에서 관련성이 있는 컬럼에 기초하여 행(Row)을 결합하는데 사용됩니다. 


SQL INNER JOIN 

- INNER JOIN 키워드는 양쪽 테이블 모두에서 일치하는 컬럼을 반환.  

- 교집합이며 기준데이블과 조인한 테이블의 중복된 값을 보여줍니다.  

SELECT 테이블명.조회할컬럼1, 테이블명.조회할컬럼2...
FROM 기준 테이블명 
INNER JOIN 조인 테이블명 ON 기준 테이블명.기준키 = 조인 테이블명.기준키 

예 : 

테이블 employee;
테이블 department; 

SELECT employee.empName, department.deptName 
FROM employee
INNER JOIN department ON employee.deptNo = department.deptNo

LEFT OURTER JOIN  

- 기준테이블 값과 기준테이블 값과 중복된 조인테이블 값을 보여줍니다. 

- LEFT JOIN 키워드는 왼쪽 테이블(table1)의 모든 컬럼과 오른쪽 컬럼(table2)의 일치하는 컬럼을 반환.  

- 오른쪽에 일치하는 레코드가 없으면 오른쪽에서 결과가 null이 됩니다. 

SELECT 테이블명.조회할컬럼1, 테이블명.조회할컬럼2...
FROM Orders 기준 테이블명 
LEFT OUTER JOIN 조인 테이블명 ON 기준 테이블명.기준키 = 조인 테이블명.기준키 

예 : 

테이블 employee;
테이블 department; 

SELECT employee.empName, department.deptName 
FROM employee
LEFT OUTER JOIN department ON employee.deptNo = department.deptNo

RIGHT OUTER JOIN 

- 기준테이블 값과 기준테이블 값과 중복된 조인테이블 값을 보여줍니다.

- RIGHT JOIN 키워드는 오른쪽 테이블(table1)의 모든 컬럼과 왼쪽 컬럼(table2)의 일치하는 컬럼을 반환.  

- 왼쪽에 일치하는 레코드가 없으면 오른쪽에서 결과가 null이 됩니다. 

SELECT 테이블명.조회할컬럼1, 테이블명.조회할컬럼2...
FROM  기준 테이블명 
RIGHT OUTER JOIN 조인 테이블명 ON 기준 테이블명.기준키 = 조인 테이블명.기준키 

예 : 

테이블 employee;
테이블 department; 

SELECT employee.empName, department.deptName 
FROM department
RIGHT OUTER JOIN employee ON employee.deptNo = department.deptNo

FULL OUTER JOIN  

- 왼쪽 테이블(table1)와 오른쪽 테이블(table2) 컬럼에 일치하는 모든 컬럼을 반환.  

- 두 테이블에 있는 모든 컬럼을 반환.  

SELECT 테이블명.조회할컬럼1, 테이블명.조회할컬럼2...
FROM  기준 테이블명 
FULL OUTER JOIN 조인 테이블명 ON 기준 테이블명.기준키 = 조인 테이블명.기준키 

예 : 

테이블 employee;
테이블 department; 

SELECT employee.empName, department.deptName 
FROM employee
FULL OUTER JOIN department ON employee.deptNo = department.deptNo

CROSS JOIN 

- 크로스 조인은 모든 경우의 수를 전부 표현해 주는 방식. 

SELECT 테이블명.조회할컬럼1, 테이블명.조회할컬럼2...
FROM  기준 테이블명 
CROSS JOIN 조인 테이블명 

----------------------------------

SELECT 테이블명.조회할컬럼1, 테이블명.조회할컬럼2...
FROM  기준 테이블명, 조인 테이블명 

예 : 

테이블 employee;
테이블 department; 

SELECT employee.empName, department.deptName 
FROM employee
CROSS JOIN department 

---------------------------------

SELECT employee.empName, department.deptName 
FROM employee, department

SELF JOIN  

- 자신 테이블과 조인한다는 의미입니다. 

- 자신이 가지고 있는 컬럼을 다양하게 변형시켜 활용할 경우 사용. 

SELECT 테이블명.조회할컬럼1, 테이블명.조회할컬럼2...
FROM  테이블명, 테이블명2 
WHERE condition;

예 : 

 

 


 

참고한 사이트 

www.w3schools.com/sql/default.asp  

 

SQL Tutorial

SQL Tutorial SQL is a standard language for storing, manipulating and retrieving data in databases. Our SQL tutorial will teach you how to use SQL in: MySQL, SQL Server, MS Access, Oracle, Sybase, Informix, Postgres, and other database systems. Start learn

www.w3schools.com

iwordpower.com/mysql-join-query-examples/

 

[MySQL] join 쿼리 예제 (자체 정리용) - 웹사이트

JOIN 절은 두 개 이상의 테이블에서 관련성이 있는 컬럼에 기초하여 행(Row)을 결합하는 데 사용됩니다.

iwordpower.com

coding-factory.tistory.com/87

Comments