선릉역 1번 출구

SQL Database(DML) - join 본문

Hacking & Security/자격증

SQL Database(DML) - join

choideu 2022. 5. 3. 19:01

1. inner join

SELECT column_name(s)
FROM table1
INNER JOIN table2
ON table1.column_name = table2.column_name;

aliases 사용 가능

SELECT column_name(s)
FROM table1 as t1
INNER JOIN table2 as t2
ON t1.column_name = t2.column_name;

예제

SELECT O.OrderID, C.CustomerName
FROM Orders as O
INNER JOIN Customers  as C ON O.CustomerID = C.CustomerID;

3개의 테이블

SELECT Orders.OrderID, Customers.CustomerName, Shippers.ShipperName
FROM ((Orders
INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID)
INNER JOIN Shippers ON Orders.ShipperID = Shippers.ShipperID);

 

2. left join

left에 있는 거 + 둘다 있는거

SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
LEFT JOIN Orders
ON Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName;

CustomerName이 left이고 orderID가 NULL -> Customers에만 존재하는 ID가 합쳐진 것

 

3. right join 

left에서 방향만 바뀐 것

SELECT column_name(s)
FROM table1
RIGHT JOIN table2
ON table1.column_name = table2.column_name;

 

4. full join

SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
FULL OUTER JOIN Orders ON Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName;

양쪽 테이블에 NULL 발생 가능

left -> right table column에 NULL 생김

rigth -> left table column에 NULL 생김

 

5. self join

SELECT column_name(s)
FROM table1 T1, table1 T2
WHERE condition;

https://moonpiechoi.tistory.com/124

 

[SQL] 셀프 조인(SELF JOIN)

셀프 조인이란, 동일 데이블 사이의 조인을 말한다. FROM 절에 동일 테이블이 두 번 이상 나타난다. 같은 테이블끼리 조인하는 것이므로 별칭(ALIAS)을 꼭 사용해야 한다. 예시 SELECT A.EMPNO 사원번호,

moonpiechoi.tistory.com

 

 

 

JOIN

https://pearlluck.tistory.com/46

 

DB JOIN 정리(INNER/LEFT/RIGHT/OUTER)

join(조인) 둘 이상의 테이블을 연결해서 데이터를 검색하는 방법 연결하려면 테이블들이 적어도 하나의 컬럼을 공유하고 있어야함 이 공유하고 있는 컬럼을 PK 또는 FK값으로 사용 ​ 종류 1. INNER

pearlluck.tistory.com

 

 

 

'Hacking & Security > 자격증' 카테고리의 다른 글

정처기 헷갈리는 것들  (0) 2022.05.05
SQL Database(DCL)  (0) 2022.05.03
SQL Database(DML)  (0) 2022.05.03
SQL Database(DDL)  (0) 2022.05.03
정처기 실기 9. 소프트웨어 개발 보안 구축(1)  (0) 2022.05.02
Comments