๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ
[Oracle] 12C ๋ณ๊ฒฝ ์ฌํญ
Top-N ๊ธฐ๋ฅ ์์๊ฐ ์ง์ ๋ ๋ฐ์ดํฐ ์งํฉ์์ ๋ฐํ๋๋ ํ ์๋ฅผ ์ ํํ๋ ๋ฐฉ๋ฒ์ ์ ๊ณต ์์ ๋๋ ํ์"N"๊ฐ์ ํ์๋ฅผ ๋ฆฌํดํ๊ฑฐ๋ ๋ฐ์ดํฐ๋ฅผ ํตํด ํ์ด์ง ํ ๋ ๋งค์ฐ ์ ์ฉ SELECT select_list FROM ํ ์ด๋ธ๋ช WHERE where_clause ORDER order_by_clause row_limiting_clause; แOFFSET : ๊ฑด๋๋ธ ํ์๋ฅผ ์ง์ ์์๋ฅผ ์ง์ ํ๋ฉด offset์ 0์ผ๋ก ์ฒ๋ฆฌํ๋ฉฐ, NULL ๋๋ ์กฐํ๋๋ ํ์ ๋ณด๋ค ํฌ๋ฉด 0๊ฐ์ ํ์ ๋ฐํ ์๋ตํ๋ฉด offset๋ 0์ด๋ฉฐ ํ ์ ํ์ด ์ฒซ ๋ฒ์งธ ํ์ผ๋ก ์์ แROW | ROWS : ์๋ฏธ๋ฅผ ๋ช ํํ๊ฒ ํ๊ธฐ ์ํด ์ฌ์ฉ แFETCH : ๋ฆฌํดํ ํ์ ๋๋ ๋ฐฑ๋ถ์จ์ ์ง์ . ์ด ์ ์ ์๋ตํ๋ฉด offset+1 ๋ถํฐ ๋ชจ๋ ํ์ ๋ฐํ แFIRST ..
[Oracle] PIVOT๊ณผ UNPIVOT
PIVOT ์ด์ ํ์ผ๋ก ROW ํํ์ ๋ฐ์ดํฐ๋ฅผ COLUMN ํํ๋ก ๋ณด์ฌ์ฃผ๋ ์ฟผ๋ฆฌ ์ปฌ๋ผ์ ๊ฐ์ ๊ธฐ์ค์ผ๋ก ์๋ก์ด ์ปฌ๋ผ์ ๋์ถํ์ฌ ๋ค์ํ ์ง๊ณํจ์๋ฅผ ์ ์ฉ ๊ฐ๋ฅ UNPIVOT ํ์ ์ด๋ก COLUMN ํํ๋ฅผ ROW ํํ๋ก ๋ณด์ฌ์ฃผ๋ ์ฟผ๋ฆฌ PIVOT ๋ ๊ฒฐ๊ณผ๋ฅผ ๋๋๋ฆฌ๋ ๊ธฐ๋ฅ์ด ์๋ ์์ํ๊ฒ PIVOT ์ ๋์ ๋๋ ๊ฐ๋ ๊ธฐ๋ฅ์ ์ผ๋ก PIVOT ๊ณผ ๋ฐ๋๋๋ ๊ฐ๋
[Oracle] ๊ณ์ธตํ ์ง์
๊ณ์ธตํ ์ง์ 2์ฐจ์ ๊ตฌ์กฐ์ ํ ์ด๋ธ๋ก ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ๊ณ์ธตํ ๊ตฌ์กฐ๋ก ๊ฒฐ๊ณผ๋ฅผ ๋ฐํ SELECT select_list FROM table_name [ WHERE condition ] START WITH condition CONNECT BY [ NOCYCLE ] [PRIOR condition] [ ORDER [ SIBLINGS] BY expr ] TOP-DOWN SELECT num, subject, LEVEL, parent FROM soft START WITH num = 1 CONNECT BY PRIOR num = parent; -- ๊ณ์ธต ๊ด๊ณ ์ง์ START WITH ์ถ๋ ฅ์ ์์ํ ์ต์์ ํ PRIOR ๋ถ๋ชจํ์ ์๋ณํ๋๋ฐ ์ฌ์ฉ CONNECT BY PRIOR num = parent ๋(num)์ ๋ถ๋ชจ(paren..
[Oracle] ๋ทฐ
๋ทฐ ์ฌ์ฉ์์๊ฒ ์ ๊ทผ์ด ํ์ฉ๋ ์๋ฃ๋ง์ ์ ํ์ ์ผ๋ก ๋ณด์ฌ์ฃผ๊ธฐ ์ํด ํ๋ ์ด์์ ๊ธฐ๋ณธ ํ ์ด๋ธ ๋๋ ๋ทฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ง๋ค์ด์ง ๊ฐ์ ํ ์ด๋ธ(๋ ผ๋ฆฌ ํ ์ด๋ธ) ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง๊ณ ์์ง ์์ผ๋ฉฐ SQL๋ง ์ ์ฅ๋์ด ์์ ๋ทฐ(VIEW) ํน์ง ๋ทฐ๋ ๊ธฐ๋ณธ ํ ์ด๋ธ์์ ์ ๋๋ ๊ฐ์ ํ ์ด๋ธ (๋ฌผ๋ฆฌ์ ๊ตฌํX) ๊ธฐ๋ณธ ํ ์ด๋ธ๊ณผ ๊ฐ์ ํํ์ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๋ฉฐ, ์กฐ์๋ ๊ธฐ๋ณธ ํ ์ด๋ธ์ ์ฌ์ฉํ๋ ๊ฒ๊ณผ ์ ์ฌ ํ์ํ ์ปฌ๋ผ์ผ๋ก๋ง ๋ทฐ๋ฅผ ์ ์ํด์ ์ฒ๋ฆฌํ ์ ์๊ธฐ ๋๋ฌธ์ ๊ด๋ฆฌ๊ฐ ์ฉ์ดํ๊ณ ๋ช ๋ น๋ฌธ์ด ๊ฐ๋จ ๋ทฐ๋ฅผ ํตํด์๋ง ๋ฐ์ดํฐ์ ์ ๊ทผํจ์ผ๋ก์จ ๋ทฐ์ ๋ํ๋์ง ์๋ ๋ฐ์ดํฐ๋ฅผ ์์ ํ๊ฒ ๋ณดํธ ๊ฐ๋ฅ ๊ธฐ๋ณธ ํ ์ด๋ธ์ ๊ธฐ๋ณธ ํค ๋ฐ NOT NULL ์ ์ฝ ์กฐ๊ฑด์ ๊ฐ์ง ์ปฌ๋ผ์ ํฌํจํ ์งํฉ์ผ๋ก ๋ทฐ๋ฅผ ๊ตฌ์ฑํด์ผ ์ฝ์ ์ด ๊ฐ๋ฅ ์ ์๋ ๋ทฐ๋ ๋ค๋ฅธ ๋ทฐ์ ์ ์์ ๊ธฐ์ด๊ฐ ๋ ์ ์๋ค. ๋ทฐ(VIEW) ์ข ๋ฅ -..