๊ณ์ธตํ ์ง์
- ๊ณ์ธตํ ๋ฐ์ดํฐ๋ ๋์ผ ํ ์ด๋ธ์ ๊ณ์ธต์ ์ผ๋ก ์์์ ํ์ ๋ฐ์ดํฐ๊ฐ ํฌํจ๋ ๋ฐ์ดํฐ๋ฅผ ๋งํ๋ค.
- ์ํฐํฐ๋ฅผ ์ํ ๊ด๊ณ ๋ฐ์ดํฐ ๋ชจ๋ธ๋ก ์ค๊ณํ ๊ฒฝ์ฐ ๊ณ์ธตํ ๋ฐ์ดํฐ๊ฐ ๋ฐ์ํ๋ค.
์ํ๊ด๊ณ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์๋ก๋ ์กฐ์ง๋, ์ฌ์, ๋ฉ๋ด๋ฑ์ด ์๋ค.
ORACLE ๊ณ์ธตํ ์ง์
SELECT ์นผ๋ผ๋ช ..
FROM ํ ์ด๋ธ๋ช
WHERE ์กฐ๊ฑด
START WITH ์กฐ๊ฑด -> ๊ณ์ธต ๊ตฌ์กฐ ์ ๊ฐ์ ์์ ์์น๋ฅผ ์ง์ ํ๋ ๊ตฌ๋ฌธ
CONNECT BY PRIOR ์กฐ๊ฑด; -> ๋ค์์ ์ ๊ฐ๋ ์์ ๋ฐ์ดํฐ๋ฅผ ์ง์ ํ๋ ๊ตฌ๋ฌธ
"PRIOR ์์ = ๋ถ๋ชจ" ํํ๋ฅผ ์ฌ์ฉํ๋ฉด ๊ณ์ธต ๊ตฌ์กฐ์์ ๋ถ๋ชจ -> ์์ ๋ฐฉํฅ์ผ๋ก ๋ด๋ ค๊ฐ๋ ์๋ฐฉํฅ์ผ๋ก ์ ๊ฐ๋๋ค.
"PRIOR ๋ถ๋ชจ = ์์" ํํ๋ฅผ ์ฌ์ฉํ๋ฉด ๊ณ์ธต ๊ตฌ์กฐ์์ ์์ -> ๋ถ๋ชจ ๋ฐฉํฅ์ผ๋ก ์ฌ๋ผ๊ฐ๋ ์ญ๋ฐฉํฅ์ผ๋ก ์ ๊ฐ๋๋ค.
LEVEL : ๋ฃจํธ ๋ฐ์ดํฐ์ด๋ฉด 1 ๊ทธ ํ์ ๋ฐ์ดํฐ์ด๋ฉด 2์ด๋ค.
๋ฆฌํ ๋ฐ์ดํฐ๊น์ง 1์ฉ ์ฆ๊ฐํ๋ค.
CONNECT_BY_ISLEAF : ์ ๊ฐ ๊ณผ์ ์์ ํด๋น ๋ฐ์ดํฐ๊ฐ ๋ฆฌํ ๋ฐ์ดํฐ์ด๋ฉด 1, ๊ทธ๋ ์ง ์์ผ๋ฉด 0์ด๋ค.
CONNECT_BY_ISCYCLE : ์ ๊ฐ ๊ณผ์ ์์ ์์์ ๊ฐ๋๋ฐ, ํด๋น ๋ฐ์ดํฐ๊ฐ ์กฐ์์ผ๋ก์ ์กด์ฌํ๋ฉด 1, ์๋๋ฉด 0์ด๋ค.
CONNECT_BY_ROOT : ์ ๊ฐํ ๋ฐ์ดํฐ์ ๋ฃจํธ ๋ฐ์ดํฐ
SYS_CONNECT_BY_PATH: ๋ฃจํธ๋ถํฐ ํ์ฌ ์ ๊ฐํ ๋ฐ์ดํฐ๊น์ง์ ๊ฒฝ๋ก๋ฅผ ํ์
์์ 1) ORACLE ์๋ฐฉํฅ ์ ๊ฐ
์์ 2) ORACLE ์ญ๋ฐฉํฅ ์ ๊ฐ
ISLEAF์ ๊ฒฝ์ฐ ์๋ฐฉํฅ ์ ๊ฐ(๋ถ๋ชจ->์์)์ผ ๋ ๋์ด์ ์์์ด ์์ผ๋ฉด 1์ ๋ฐํํ๊ณ ์ญ๋ฐฉํฅ ์ ๊ฐ(์์->๋ถ๋ชจ)์ผ ๊ฒฝ์ฐ์๋ ๋์ด์ ๋ถ๋ชจ๊ฐ ์์ ๋ 1์ ๋ฐํํ๋ค.
์ ํ ์กฐ์ธ
- ์ ํ์กฐ์ธ์ด๋ ๋์ผ ํ ์ด๋ธ ์ฌ์ด์ ์กฐ์ธ์ ๋งํ๋ค.
- ๋์ผ ํ ์ด๋ธ ์ฌ์ด์ ์กฐ์ธ์ ์ํํ๋ฉด ํ ์ด๋ธ๊ณผ ์นผ๋ผ ์ด๋ฆ์ด ๋ชจ๋ ๋์ผํ๊ธฐ ๋๋ฌธ์ ์๋ณ์ ์ํด ๋ฐ๋์ ํ ์ด๋ธ ๋ณ์นญ์ ์ฌ์ฉํด์ผ ํ๋ค.
- ์ ํ์กฐ์ธ์ ๋์ผํ ํ ์ด๋ธ์ด์ง๋ง, ๊ฐ๋ ์ ์ผ๋ก๋ ๋๊ฐ์ ์๋ก ๋ค๋ฅธ ํ ์ด๋ธ์ ์ฌ์ฉํ๋ ๊ฒ๊ณผ ๋์ผํ๋ค.
- ํ๋์ ํ ์ด๋ธ์์ ๋ ๊ฐ์ ์นผ๋ผ์ด ์ฐ๊ด ๊ด๊ณ๋ฅผ ๊ฐ์ง๊ณ ์๋ ๊ฒฝ์ฐ์ ์ฌ์ฉํ๋ค.
์์ )
์์ ๊ฐ์ด ์ ํ์กฐ์ธ์ ํ์ฉํ๋ฉด ๊ณ์ธตํ ์ง์ ๊ฒฐ๊ณผ ๋ด์ฉ์ ์ถ์ถํ ์ ์๋ค.
'SQLD' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๊ณผ๋ชฉII SQL ๊ธฐ๋ณธ ๋ฐ ํ์ฉ 2์ฅ - 5์ GROUP FUNCTION (0) | 2021.05.25 |
---|---|
๊ณผ๋ชฉII SQL ๊ธฐ๋ณธ ๋ฐ ํ์ฉ 2์ฅ - 4์ ์๋ธ์ฟผ๋ฆฌ (0) | 2021.05.25 |
๊ณผ๋ชฉ II SQL ๊ธฐ๋ณธ ๋ฐ ํ์ฉ 2์ฅ - 2์ ์งํฉ ์ฐ์ฐ์ (0) | 2021.05.24 |
๊ณผ๋ชฉII SQL ๊ธฐ๋ณธ ๋ฐ ํ์ฉ 2์ฅ - 1์ ํ์ค ์กฐ์ธ (0) | 2021.05.24 |
๊ณผ๋ชฉII SQL ๊ธฐ๋ณธ ๋ฐ ํ์ฉ 1์ฅ - 8์ /9์ ORDER BY, JOIN (0) | 2021.05.21 |