1. Subquery
1) 여러 번의 연산 한번에 수행하기
연산이 한번에 끝나지 않을 때 하나의 SQL문장 안에 또 다른 SQL 문장을 포함하는 것을 서브쿼리라고 한다.
일반적으로 서브쿼리가 먼저 실행되고, 그 결과를 이용해 메인 쿼리가 실행 된다.
기본적인 구조는 다음과 같다. 여러 번 중첩하여 사용할 수 있다.
SELECT 컬럼명
FROM
(
SELECT 컬럼명
FROM 테이블명
) AS 별칭
2. JOIN ( INNER JOIN, LEFT JOIN, RIGHT JOIN)
1) 여러 테이블에서 데이터 불러오기
원하는 데이터가 한 테이블에 있지 않고 다른 테이블에 분산되어 있을 때 테이블을 연결하여 데이터를 조회해 준다.
INNER JOIN, RIGHT JOIN, LEFT JOIN 등이 있다.
2) INNER JOIN
INNER JOIN은 가장 일반적인 JOIN으로, 두 테이블에서 일치하는 값을 가진 행만 가져온다.
3) LEFT JOIN
LEFT JOIN은 왼쪽 테이블의 모든 행과 오른쪽 테이블의 일치하는 행을 가져온다.
4) RIGHT JOIN
RIGHT JOIN은 LEFT JOIN의 반대로 오른쪽 테이블의 모든 행과 왼쪽 테이블의 일치하는 행을 가져온다.
5) JOIN의 기본 구조
-- INNER JOIN
SELECT 조회 할 컬럼
FROM 테이블1 a INNER JOIN 테이블2 b ON a.공통 컬럼명 = b.공통 컬럼명
-- LEFT JOIN
SELECT 조회 할 컬럼
FROM 테이블1 a LEFT JOIN 테이블2 b ON a.공통 컬럼명 = b.공통 컬럼명
-- RIGHT JOIN
SELECT 조회 할 컬럼
FROM 테이블1 a RIGHT JOIN 테이블2 b ON a.공통 컬럼명 = b.공통 컬럼명
이때, 공통 컬럼은 묶기 위한 공통 값이기 때문에 컬럼명이 일치하지 않아도 된다.
'TIL' 카테고리의 다른 글
웹페이지 만들기 프로젝트 (2) | 2024.12.27 |
---|---|
[SQL] Pivot Table과 윈도우 함수 그리고 값이 없을 때 대처법 (1) | 2024.12.25 |
[SQL] 문자 데이터 변경과 그 활용 (2) | 2024.12.24 |
[SQL] 계산 및 정렬 (0) | 2024.12.23 |
[SQL] SELECT, FROM, WHERE (2) | 2024.12.13 |