SQL
์ ์
- ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ๋ณด๋ฅผ ์ ์ฅํ๊ณ ์ฒ๋ฆฌํ๊ธฐ ์ํ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด
์ข ๋ฅ
- DDL
- ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ ์ํ๋ ๋ช ๋ น์ด
- ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ ํน์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ์๊ฐ ์ฌ์ฉ
- create : ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฐ ํ ์ด๋ธ ์์ฑ
- alter : ํ ์ด๋ธ ์์
- drop : ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฐ ํ ์ด๋ธ ์ญ
- DML
- ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ ์ด๋ธ์ ๋ ์ฝ๋๋ฅผ ์กฐํ, ์์ ๊ทธ๋ฆฌ๊ณ ์ญ์ ํ๋ ๋ช ๋ น์ด
- ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฌ์ฉ์์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์คํ
๊ฐ์ ์ธํฐํ์ด์ค ์ญํ
- insert : ๋ฐ์ดํฐ ์ฝ์
- select : ๋ฐ์ดํฐ ์กฐํ
- update : ๋ฐ์ดํฐ ์์
- delete : ๋ฐ์ดํฐ ์ญ์
- DCL
- ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ํ ์ ๊ทผ ๊ถํ ์ ์ด ๋ฐ ํธ๋์ญ์
์ปจํธ๋กคํ๋ ๋ช
๋ น์ด
- grant : ๊ถํ ๋ถ์ฌ
- revoke : ๊ถํ ํ์
- commit : ์๋ฃ๋ ์์ ์ผ๋ก ์ธํ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์
- rollback : ์์ ์์ ์ด์ ์ํ๋ก ๋ณต๊ตฌ
- ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ํ ์ ๊ทผ ๊ถํ ์ ์ด ๋ฐ ํธ๋์ญ์
์ปจํธ๋กคํ๋ ๋ช
๋ น์ด
Join
์ ์
- ๋ ๊ฐ ์ด์์ ํ ์ด๋ธ์ ๋ฌถ์ด์ ๋ฐ์ดํฐ๋ฅผ ์กฐํ ๋ฐ ์์ ํ ๋ ์ฌ์ฉ
์ข ๋ฅ
- Inner join
- ์ผ๋ฐ์ ์ธ join์ ๋ณดํต Inner join ์ง์นญ
- ํ ์ด๋ธ ๊ฐ ๋ฐ์ดํฐ์ ๊ต์งํฉ

- ์ํ์ ์ด๋ฆ์ ๊ด๋ฆฌํ๋ ํ
์ด๋ธ๊ณผ ์ํ์ ์๋์ ๊ด๋ฆฌํ๋ ํ
์ด๋ธ
- ์ด ๋ ๊ฐ์ ํ
์ด๋ธ์ ์ํ์ฝ๋๋ผ๋ ์์ฑ์ด ๊ณตํต ์์ฑ
SELECT N.์ํ์ฝ๋ ์ํ์ฝ๋, N.์ํ๋ช
์ํ๋ช
, C.์๋ ์๋
FROM TableA as N // ์ฒซ ๋ฒ์งธ ํ
์ด๋ธ
INNER JOIN TableB as C // ๋ ๋ฒ์งธ ํ
์ด๋ธ
ON N.์ํ์ฝ๋ = C.์ํ์ฝ๋ // ๊ฒฐํฉ ์กฐ๊ฑด
- TableA์ ์ํ์ฝ๋์ TableB์ ์ํ์ฝ๋๊ฐ ๊ฐ์ ๋ ์ฝ๋๋ง ๊ฒฐํฉํ๋๋ก ON์ ์ฌ์ฉํด์ ์กฐ๊ฑด์ ์์ฑ
- Inner join์ ์งํํ ๋, ๋ ํ
์ด๋ธ์ ๋ชจ๋ ์ง์ ํ ์ด์ ๋ฐ์ดํฐ๊ฐ ์์ด์ผ ํจ

- Outer join
- ํ ์ชฝ์๋ง ๋ฐ์ดํฐ๊ฐ ์์ด๋ ๊ฒฐ๊ณผ๊ฐ ๋์จ๋ค.
- Outer join์ Left, Right ๊ทธ๋ฆฌ๊ณ Full 3๊ฐ์ง๋ก ๊ตฌ๋ถ
SELECT <์ด ๋ชฉ๋ก>
FROM <์ฒซ ๋ฒ์งธ ํ
์ด๋ธ(LEFT ํ
์ด๋ธ)>
<LEFT | RIGHT | FULL> OUTER JOIN <๋ ๋ฒ์งธ ํ
์ด๋ธ(RIGHT ํ
์ด๋ธ)>
ON <์กฐ์ธ ์กฐ๊ฑด>
[WHERE ๊ฒ์ ์กฐ๊ฑด]
- Left join : ์ผ์ชฝ ํ
์ด๋ธ์ ๋ชจ๋ ๊ฐ์ด ์ถ๋ ฅ

- Right join : ์ค๋ฅธ์ชฝ ํ
์ด๋ธ์ ๋ชจ๋ ๊ฐ์ด ์ถ๋ ฅ

- Full join : ์ผ์ชฝ ๋๋ ์ค๋ฅธ์ชฝ ํ
์ด๋ธ์ ๋ชจ๋ ๊ฐ์ด ์ถ๋ ฅ
