๋ทฐ(VIEW)
- ๋ค๋ฅธ ํ ์ด๋ธ์ ๊ธฐ๋ฐ์ผ๋ก ๋ง๋ค์ด์ง ๊ฐ์ ํ ์ด๋ธ
- ๋ฐ์ดํฐ๋ฅผ ์ค์ ๋ก ์ ์ฅํ์ง ์๊ณ ๋ ผ๋ฆฌ์ ์ผ๋ก๋ง ์กด์ฌ but ์ผ๋ฐ ํ ์ด๋ธ๊ณผ ๋์ผํ ๋ฐฉ๋ฒ์ผ๋ก ์ฌ์ฉ
- ๋ค๋ฅธ ๋ทฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์๋ก์ด ๋ทฐ ๋ง๋๋ ๊ฒ๋ ๊ฐ๋ฅ
- ๋ทฐ ํตํด ๊ธฐ๋ณธ ํ ์ด๋ธ(๋ทฐ๋ฅผ ๋ง๋๋ ๊ธฐ๋ฐ์ด ๋๋ ๋ฌผ๋ฆฌ์ ํ ์ด๋ธ) ๋ด์ฉ ์ฝ๊ฒ ๊ฒ์ํ ์ ์์ง๋ง, ๊ธฐ๋ณธ ํ ์ด๋ธ์ ๋ด์ฉ์ ๋ณํ์ํค๋ ์์ ์ ์ ํ์
→→ ๊ธฐ๋ณธ ํ ์ด๋ธ์ ๋ค์ฌ๋ค ๋ณผ ์ ์๋ ์ฐฝ์ ์ญํ ์ ๋ด๋น, ๋ฌผ๋ฆฌ์ X, ๋ ผ๋ฆฌ์ ๊ฐ์ ํ ์ด๋ธ
๋ทฐ ์์ฑ : CREATE VIEW ๋ฌธ
CREATE VIEW ๋ทฐ_์ด๋ฆ[(์์ฑ_๋ฆฌ์คํธ)]
AS SELECT ๋ฌธ
[WITH CHECK OPTION];
- CREATE VIEW ํค์๋์ ํจ๊ป ์์ฑํ ๋ทฐ์ ์ด๋ฆ๊ณผ ๋ทฐ๋ฅผ ๊ตฌ์ฑํ๋ ์์ฑ ์ด๋ฆ ๋์ด
- AS ํค์๋์ ํจ๊ป ๊ธฐ๋ณธ ํ ์ด๋ธ์ ๋ํ SELECT ๋ฌธ ์์ฑ (์ด๋, ORDER BY๋ ์ฌ์ฉ ๋ถ๊ฐ)
- WITH CHECK OPTION: ๋ทฐ์ ์ฝ์ ์ด๋ ์์ ์ฐ์ฐ์ ํ ๋ SELECT ๋ฌธ์์ ์ ์ํ ๋ทฐ์ ์ ์ ์กฐ๊ฑด ์๋ฐํ๋ฉด ์ํ๋์ง ์๋๋ก ํ๋ ์ ์ฝ์กฐ๊ฑด ์ง์
๋ทฐ ํ์ฉ: SELECT ๋ฌธ
- ๋ทฐ๋ ์ผ๋ฐ ํ ์ด๋ธ๊ณผ ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก ์ํ๋ ๋ฐ์ดํฐ ๊ฒ์ ๊ฐ๋ฅ
- ๋ทฐ์ ๋ํ SELECT ๋ฌธ์ด ๋ด๋ถ์ ์ผ๋ก๋ ๊ธฐ๋ณธ ํ ์ด๋ธ์ ๋ํ SELECT ๋ฌธ์ผ๋ก ๋ณํ๋์ด ์ํ
- ๊ฒ์ ์ฐ์ฐ์ ๋ชจ๋ ๋ทฐ์ ์ํ ๊ฐ๋ฅ
๋ทฐ ํ์ฉ: INSERT, UPDATE, DELETE ๋ฌธ
- ๋ทฐ์ ๋ํ ์ฝ์ , ์์ , ์ญ์ ์ฐ์ฐ์ ์ค์ ๋ก ๊ธฐ๋ณธ ํ ์ด๋ธ์ ์ํ๋์ด ๊ฒฐ๊ณผ์ ์ผ๋ก ๊ธฐ๋ณธ ํ ์ด๋ธ์ด ๋ณ๊ฒฝ๋จ
- ๋ทฐ์ ๋ํ ์ฝ์ , ์์ , ์ญ์ ์ฐ์ฐ์ ์ ํ์ ์ผ๋ก ์ํ (๋ณ๊ฒฝ ๊ฐ๋ฅ ๋ทฐ VS ๋ณ๊ฒฝ ๋ถ๊ฐ๋ฅ ๋ทฐ)
- ๋ณ๊ฒฝ ๋ถ๊ฐ๋ฅํ ๋ทฐ์ ํน์ง
- ๊ธฐ๋ณธ ํ ์ด๋ธ์ ๊ธฐ๋ณธํค๋ฅผ ๊ตฌ์ฑํ๋ ์์ฑ์ด ํฌํจ๋์ด ์์ง ์์ ๋ทฐ
- ๊ธฐ๋ณธ ํ ์ด๋ธ์ ์๋ ๋ด์ฉ์ด ์๋ ์ง๊ณ ํจ์๋ก ์๋ก ๊ณ์ฐ๋ ๋ด์ฉ์ ํฌํจํ๋ ๋ทฐ
- DISTINCT ํค์๋๋ฅผ ํฌํจํด ์ ์ํ ๋ทฐ
- GROUP BY ์ ์ ํฌํจํด ์ ์ํ ๋ทฐ
- ์ฌ๋ฌ ๊ฐ์ ํ ์ด๋ธ์ ์กฐ์ธํ์ฌ ์ ์ํ ๋ทฐ๋ ๋ณ๊ฒฝ ๋ถ๊ฐ๋ฅํ ๊ฒฝ์ฐ๊ฐ ๋ง์
๋ทฐ์ ์ฅ์
- ์ฟผ๋ฆฌ๋ฌธ์ ์ข ๋ ์ฝ๊ฒ ์์ฑ ๊ฐ๋ฅ
- GROUP BY, ์ง๊ณ ํจ์, ์กฐ์ธ ๋ฑ ์ด์ฉํด ๋ทฐ ๋ง๋ค์ด ๋์ผ๋ฉด, ๋ณต์กํ SQL ๋ฌธ ์์ฑํ์ง ์์๋ SELECT์ FROM์ ๋ง์ผ๋ก๋ ์ํ๋ ๋ฐ์ดํฐ ๊ฒ์ ๊ฐ๋ฅ
- ๋ฐ์ดํฐ์ ๋ณด์ ์ ์ง์ ๋์
- ์์ ์๊ฒ ์ ๊ณต๋ ๋ทฐ๋ฅผ ํตํด์๋ง ๋ฐ์ดํฐ์ ์ ๊ทผํ๋๋ก ๊ถํ ์ค์ ๊ฐ๋ฅ
- ๋ฐ์ดํฐ๋ฅผ ์ข ๋ ํธ๋ฆฌํ๊ฒ ๊ด๋ฆฌํ ์ ์๋ค
- ์ ๊ณต๋ ๋ทฐ์ ๊ด๋ จ ์๋ ๋ค๋ฅธ ๋ด์ฉ์ ๋ํด ์ฌ์ฉ์๊ฐ ์ ๊ฒฝ ์ธ ํ์๊ฐ ์์
๋ทฐ ์ญ์ : DROP VIEW ๋ฌธ
- ๋ทฐ ์ญ์ ํด๋ ๊ธฐ๋ณธ ํ
์ด๋ธ์ ์ํฅ ๋ฐ์ง X
DROP VIEW ๋ทฐ_์ด๋ฆ;โ
- ๋ง์ฝ ์ญ์ ํ ๋ทฐ๋ฅผ ์ฐธ์กฐํ๋ ์ ์ฝ์กฐ๊ฑด ์กด์ฌํ๋ค๋ฉด?
- EX) ์ญ์ ํ ๋ทฐ ์ด์ฉํด ๋ง๋ค์ด์ง ๋ค๋ฅธ ๋ทฐ๊ฐ ์กด์ฌํ๋ ๊ฒฝ์ฐ
- ๋ทฐ ์ญ์ ๊ฐ ์ํ๋์ง ์์, ๊ด๋ จ๋ ์ ์ฝ์กฐ๊ฑด์ ๋จผ์ ์ญ์ ํ ๋ทฐ๋ฅผ ์ญ์ ํด์ผํจ
728x90
'DB(Database) > Basic Concept' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[DB] ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ๊ทํ (1) | 2021.11.05 |
---|---|
[DB] ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ (0) | 2021.11.04 |
[DB] ๊ด๊ณ ๋ฐ์ดํฐ ๋ชจ๋ธ (0) | 2021.04.25 |
[DB] ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง (๋ฐ์ดํฐ๋ฒ ์ด์ค) (0) | 2021.04.17 |
[DB] ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์คํ (0) | 2021.03.12 |