SQL 기본 문법
HAVING
1
2
3
4
| SELECT 열1, 열2
FROM 테이블
GROUP BY 열1, 열2
HAVING 조건
|
HAVING 문은 GROUP BY 문으로 그룹화된 데이터에 조건을 적용하여 필터링 하는데 사용된다
Join
1
2
3
| SELECT 열
FROM 테이블1
JOIN 테이블2 ON 조건
|
JOIN은 두 개 이상의 테이블을 연결하여 하나의 결과 집합으로 반환하는 문법으로 테이블 간의 관계를 활용하여 데이터를 결합하고 필요한 정보를 얻는데 사용된다
Self Join
1
2
3
| SELECT 테이블1.열, 테이블2.열
FROM 테이블 AS 테이블1, 테이블 AS 테이블2
WHERE 조건
|
Self Join은 단일 테이블 내에서 자체적으로 연결을 수행하는 문법으로 동일한 테이블을 두 번 사용하여 서로 다른 행을 연결한다
Outer Join
Outer Join은 INNER JOIN과 달리 연결 조건을 충족하지 않는 행도 결과에 포함시킬 수 있는 JOIN 문법으로 Outer Join은 왼쪽 외부 조인(LEFT OUTER JOIN), 오른쪽 외부 조인(RIGHT OUTER JOIN), 전체 외부 조인(FULL OUTER JOIN)으로 구분된다
LEFT OUTER JOIN
1
2
3
4
| Copy code
SELECT 열
FROM 테이블1
LEFT JOIN 테이블2 ON 조건
|
RIGHT OUTER JOIN
1
2
3
4
| Copy code
SELECT 열
FROM 테이블1
RIGHT JOIN 테이블2 ON 조건
|
FULL OUTER JOIN
1
2
3
4
| Copy code
SELECT 열
FROM 테이블1
FULL JOIN 테이블2 ON 조건
|
서브 쿼리
1
2
3
| SELECT 열
FROM 테이블
WHERE 열 IN (SELECT 열 FROM 다른_테이블 WHERE 조건)
|
서브쿼리는 다른 SQL 문 내에 포함된 내부 쿼리로 주로 외부 쿼리의 조건에 따라 데이터를 필터링하거나 결합하는 데 사용된다 서브쿼리는 일반적으로 괄호로 묶여 있으며, SELECT, INSERT, UPDATE, DELETE 문의 일부로 사용될 수 있다
SET (합집합, 교집합, 차집합)
SET은 데이터베이스에서 중복된 값을 제거하거나 연산을 수행하는 데 사용되는 문법이다
1
2
3
4
5
| SELECT 열
FROM 테이블1
SET_OPERATOR
SELECT 열
FROM 테이블2
|
- UNION: 두 개의 SELECT 문의 결과를 결합하고 중복된 행을 제거한다
- UNION ALL: 두 개의 SELECT 문의 결과를 결합하며, 중복된 행도 모두 포함한다
- INTERSECT: 두 개의 SELECT 문의 결과에서 공통된 행만 반환한다
- EXCEPT: 첫 번째 SELECT 문의 결과에서 두 번째 SELECT 문의 결과를 제외한 행을 반환한다
INSERT
1
2
| INSERT INTO 테이블 (열1, 열2, ...)
VALUES (값1, 값2, ...)
|
INSERT 문은 데이터베이스 테이블에 새로운 행을 삽입하는 데 사용된다
UPDATE
1
2
3
| UPDATE 테이블
SET 열1 = 값1, 열2 = 값2, ...
WHERE 조건
|
UPDATE 문은 테이블의 기존 행을 수정하는 데 사용된다
DELETE
1
2
| DELETE FROM 테이블
WHERE 조건
|
DELETE 문은 테이블에서 행을 삭제하는 데 사용된다
CREATE TABLE
1
2
3
4
5
| CREATE TABLE 테이블명 (
열1 데이터유형 [제약조건],
열2 데이터유형 [제약조건],
...
)
|
테이블을 만들기 위해서는 CREATE TABLE 문을 사용한다