๐ชก SQL ์ฒ๋ฆฌ ๊ณผ์ ๊ณผ๊ฑฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ๋ก๊ทธ๋๋ฐ์ ํ ๋์๋, ์ฒ๋ฆฌ ์ ์ฐจ๋ฅผ ํ๋ก๊ทธ๋๋จธ๊ฐ ์ง์ ์์ฑ์ ํด์ผ ํ๋ค. ๊ทธ๋ฌ๋ ์ง๊ธ์ ๊ตฌ์กฐํ๋ ์ง์์ธ์ด(SQL) ์ ํตํด ์ฌ์ฉ์๊ฐ ์ํ๋ ๊ฒฐ๊ณผ์งํฉ์ ์ ์ํ๊ณ , ๊ทธ๊ฒ์ ์ป๋ ๋ฐ์ ํ์ํ ์ฒ๋ฆฌ์ ์ฐจ๋ฅผ ์ง์ ๊ธฐ์ ์ ํ์ง๋ ์๋๋ค. ๋์ ํ๋ก๊ทธ๋๋ฐ์ ํด์ฃผ๋ ์์ง์ด DBMS ๋ด์ ๋ด์ฅ์ด ๋์ด ์๊ธฐ ๋๋ฌธ์ด๋ฉฐ, SQL ์ตํฐ๋ง์ด์ ๊ฐ ๊ทธ ์ญํ ์ ์ํํ๋ค. ์ตํฐ๋ง์ด์ ์ ์ํด์ ์์ฑ๋ ์ฒ๋ฆฌ์ ์ฐจ๋ฅผ ์คํ๊ณํ์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค. ์ตํฐ๋ง์ด์ ์์๋ ์คํ ๊ณํ์ ์์ฑํ๊ณ , ํ๋ก์์ (๋๋ ์ฝ๋) ํํ๋ก ๋ณํํ๋ ๊ณผ์ ์ ๊ฑฐ์น ๋ค SQL ์์ง์ ์ํด ์ํ์ด ๋๋ค. ๐ฃSQL ํ์ฑ(Parsing) ์ฌ์ฉ์๊ฐ SQL์ ์คํํ๊ฒ ๋๋ฉด, ์ ์ผ ๋จผ์ SQL Parser๊ฐ SQL ๋ฌธ์ฅ์ ๋ฌธ๋ฒ์ ์ค๋ฅ๊ฐ ์๋์ง ๊ฒ์ฌํ๋ค...
DBMS
โจ JOIN? ์กฐ์ธ์ ๋ ๊ฐ ์ด์์ ํ
์ด๋ธ์ ํ๋์ ์งํจ์ผ๋ก ๋ง๋๋ ๊ฒ์ด๋ค. SQL ๋ฌธ์์ FROM ์ ์ ๋ ๊ฐ ์ด์์ ํ
์ด๋ธ์ด ๋์ด๋ ๊ฒฝ์ฐ์ ์กฐ์ธ์ ์ํํ๋ค. ์กฐ์ธ์ ํ๋ ํ
์ด๋ธ์ด A, B, C ์ธ ๊ฐ๊ฐ ์กด์ฌํ ๋, DBMS์์๋ ๋์์ ์ํ์ ํ๋ ๊ฒ ์๋๋ผ, A์ B๋ฅผ ๋จผ์ JOIN์ ์ํํ ๋ค์, ๊ทธ ๊ฒฐ๊ณผ์ C๋ฅผ JOIN ์ํํ๋ค. ๋ค์๊ณผ ๊ฐ์ด ์ํ๋๋ JOIN์ ๋จ๊ณ๋ณ๋ก ๋ค๋ฅธ ๊ธฐ๋ฒ์ ์ฌ์ฉํ ์ ์๋๋ฐ, ์์ฃผ ์ฌ์ฉ๋๋ ๊ฒ์ NL JOIN, HASH JOIN, SORT MERGE JOIN์ด ์กด์ฌํ๋ค. ๐ชก NL JOIN NL JOIN์ ์ค์ฒฉ FOR๋ฌธ๊ณผ ๊ทธ ๋ฐฉ์์ด ์ ์ฌํ๋ค๊ณ ํ ์ ์๋ค.์ฆ, ์ ํ ํ
์ด๋ธ์ ์กฐ๊ฑด์ ๋ง์กฑํ๋ ํ์ด ๋์ค๋ฉด, ํํ ํ
์ด๋ธ์ ์ฝ์ผ๋ฉด์ ์กฐ์ธ์ ์ํํ๋ ๊ฒ์ด๋ค. FOR๋ฌธ์ด ๊ทธ๋ฌํ๋ฏ..