๐ 22-08-24
SQLP ์ด๋ก ๋ณต์ต
(1) ๊ณ ๋ํ
SQLP ์ค๊ธฐ ํ์ด
(1) [SQLP์ค๊ธฐํ์ด]4์ฅ ์กฐ์ธํ๋(4)-๊ณ ๊ธ์กฐ์ธ๊ธฐ๋ฒ 55๋ฒ
(2) [SQLP์ค๊ธฐํ์ด]4์ฅ ์กฐ์ธํ๋(4)-๊ณ ๊ธ์กฐ์ธ๊ธฐ๋ฒ 56๋ฒ
(3) [SQLP์ค๊ธฐํ์ด]4์ฅ ์กฐ์ธํ๋(4)-๊ณ ๊ธ์กฐ์ธ๊ธฐ๋ฒ 57๋ฒ
(4) [SQLP์ค๊ธฐํ์ด]4์ฅ ์กฐ์ธํ๋(4)-๊ณ ๊ธ์กฐ์ธ๊ธฐ๋ฒ 58๋ฒ
(5) [SQLP์ค๊ธฐํ์ด]4์ฅ ์กฐ์ธํ๋(4)-๊ณ ๊ธ์กฐ์ธ๊ธฐ๋ฒ 59๋ฒ
(6) [SQLP์ค๊ธฐํ์ด]4์ฅ ์กฐ์ธํ๋(4)-๊ณ ๊ธ์กฐ์ธ๊ธฐ๋ฒ 60๋ฒ
SQLP ํ๊ธฐ ํ์ด
(1) [SQLPํ๊ธฐํ์ด]3์ฅ ์ธ๋ฑ์ค ํ๋
(2) [SQLPํ๊ธฐํ์ด]4์ฅ ์กฐ์ธ ํ๋
๐ 8/24 ๋ณต๊ธฐ
[1] ์ ๋ถ์ด๋ ฅ์ผ๋ก ์กฐ์ธํด์ ๊ฐ์ ธ์ค๊ธฐ
[SQLP์ค๊ธฐํ์ด]4์ฅ ์กฐ์ธํ๋(4)-๊ณ ๊ธ์กฐ์ธ๊ธฐ๋ฒ 60๋ฒ
- ์ง์ ์ข
๋ฃ์ผ์์ -1์ด๋ฅผ ๋ฐฐ์ ๋ก์ฐ์๋ฅผ ํ๋๋ก ๋ง๋ค์ด ์กฐ์ธ์ฒ๋ฆฌํด ๊ฐ์ ธ์ค๋๋ก ํ๋ค.
- ์ด๋ ๊ฒ ํ๋ฉด ๋ถ๋ถ๋ฒ์์ฒ๋ฆฌํ๋ ์๋ธ์ฟผ๋ฆฌ๋ฅผ ๋ฐ๋ก ๋ง๋ค์ง ์์๋ ๋๋ค.
[2] Index Skip Scan
โถ ์ธ๋ฑ์ค ๊ตฌ์ฑ : ํ ์ธ๊ตฌ๋ถ์ฝ๋ + ์ํ์ฝ๋ + ์
์ฒด์ฝ๋ + ์ํ์ ํ์ฝ๋
SELECT ์ฃผ๋ฌธ์ผ์, ์ํ์ฝ๋, ์ ์๊ฐ, ํ ์ธ๊ฐ, ํ ์ธ๊ตฌ๋ถ์ฝ๋
FROM ์ํ๊ณต๊ธ
WHERE ์ํ์ ํ์ฝ๋ = 'A'
AND ์
์ฒด์ฝ๋ = '2956'
AND ์ํ์ฝ๋ = 'A0113509056'
AND ํ ์ธ๊ตฌ๋ถ์ฝ๋ BETWEEN 'A' and 'C'
ORDER BY ์ฃผ๋ฌธ์ผ์ DESC
- ์ ๋ ์ปฌ๋ผ์ NDV ๋ ์ ๊ณ ํํ ์ปฌ๋ผ์ NDV๋ ๋ง์ ๋ BETWEEN ์กฐ๊ฑด์ ์ธ๋ฑ์ค ์ ๋ ์ปฌ๋ผ์ IN ์กฐ๊ฑด์ผ๋ก ๋ณ๊ฒฝํ๋ฉด ์ฑ๋ฅ ํฅ์์ ํฐ ๋์์ด ๋๋ค.
[3] ๋์ SQL
50๋ฒ
SELECT * FROM ๊ฑฐ๋
WHERE ๊ณ ๊ฐID LIKE
AND ๊ฑฐ๋์ผ์ BETWEEN
- ๊ณ ๊ฐID๊ฐ NULL์ด๋ฉด AND ๊ฑฐ๋์ผ์ BETWEEN #OT1# AND #DT2# ์กฐ๊ฑด์ ๋ง ์ ์ฉ๋๊ฒ ๋ง๋ค๊ณ ์ถ์ ๊ฑด๋ฐ
์ด ๋ . ๊ณ ๊ฐID๊ฐ ์ ๋ ์ปฌ๋ผ์ธ ์ธ๋ฑ์ค๋ฅผ Range Scan ํ๋ ์คํ ๊ณํ์ด ์๋ฆฝ๋๋ฉด, #CUST_ID ๋ณ์์ ๊ฐ์ ์
๋ ฅํ์ง ์์์ ๋ ์ธ๋ฑ์ค์์ '๋ชจ๋ ' ๊ฑฐ๋ ๋ฐ์ดํฐ๋ฅผ ์ค์บํ๋ ๋ถ์์ฌ๊ฐ ์๊ธด๋ค.
[4] ํด๋ฌ์คํฐ ์ ์
- ํด๋ฌ์คํฐ๋ ๊ฐ์ด ๊ฐ์ ๋ ์ฝ๋๋ฅผ ํ ๋ธ๋ก(๋ฐ์ดํฐ๊ฐ ๋ง์ ๊ฒฝ์ฐ ์ฐ๊ฒฐ๋ ์ฌ๋ฌ ๋ธ๋ก)์ ๋ชจ์
์ ์ ์ฅํ๋ค.
[5] or ์กฐ๊ฑด์ ์ด ์์ง๋ง Index Range Scan์ด ๊ฐ๋ฅํ ๊ฒฝ์ฐ
- OR ์กฐ๊ฑด์ ๊ธฐ๋ณธ์ ์ผ๋ก Index Range Scan์ ์ํ ์ก์ธ์ค ์กฐ๊ฑด์ผ๋ก ์ฌ์ฉํ ์ ์๋ค.
- OR ์กฐ๊ฑด์ผ๋ก๋ ์์ง์ ํ์์ ํตํด ์ค์บ ์์์ ์ ์ฐพ์ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค.
- ๋ค๋ง,CONCATENATION(์ตํฐ๋ง์ด์ ์ ์ํ UNION ALL ๋ถ๊ธฐ)์ผ๋ก ์ฒ๋ฆฌํ์ ๋ โญ๏ธ๊ฐ๊ฐโญ๏ธ ์์ง ํ์์ ์ํ ์ก์ธ์ค ์กฐ๊ฑด์ผ๋ก ์ฌ์ฉํ ์ธ๋ฑ์ค๊ฐ ์๋ค๋ฉด, Index Range Scan์ด ๊ฐ๋ฅํ๋ค.
[6] โญ๏ธ use_concat ์ฃผ์ํ ์
28๋ฒ
- โญ๏ธ use_concat ํํธ๋ or์ ์ด ์๋ SQL์ ์จ์ผํ๋๊ฒ์ด๋ค.
- ๊ทธ๋ฅ in์ ๋ง ์๋ ๊ฒฝ์ฐ๋ in list๋ก ํ๋ฆฌ๊ฒ ์ง๋ง ์ด์ use_concat์ ์ฐ๋ฉด ์๋๋ค!!!
- in list ๋ณํ๋ union all ๋ก ์ฒ๋ฆฌ๋๋ค.
[7] merge ์กฐ์ธ
18๋ฒ , 19๋ฒ
- merge ์กฐ์ธ ํํธ์๋ ์์๋ ๋์ ํ
์ด๋ธ์ ์ ํ๋ค.
- ์ํธ ๋จธ์ง ์กฐ์ธ์ด ๋น ๋ฅธ ์ด์ ๋ ์ฒซ ๋ฒ์งธ ์งํฉ์ ๊ธฐ์ค์ผ๋ก ๋ ๋ฒ์งธ ์งํฉ์ ๋ฐ๋ณต ์ก์ธ์คํ ๋๋
โญ๏ธ ๋ฒํผ์บ์๋ฅผ ํ์ํ์ง ์๊ณ PGA์์ ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ธฐ ๋๋ฌธ์ด๋ค.โญ๏ธ
- โญ๏ธ ๋ฐ๋ผ์ ๋ ๋ฒ์งธ ์งํฉ์ ๋ฐ๋์ ์ ๋ ฌํด์ PGA์ ์ ์ฅํ ํ์ ์กฐ์ธ์ ์์ํ๋ค.โญ๏ธ
- ์ฒซ ๋ฒ์งธ ์งํฉ๋ ์ผ๋ฐ์ ์ผ๋ก PGA์ ์ ์ฅํ์ง๋ง, โญ๏ธ ์กฐ์ธ ์ปฌ๋ผ์ ์ธ๋ฑ์ค๊ฐ ์์ด์ ๊ทธ๊ฒ์ ์ฌ์ฉํ๋ค๋ฉด PGA ์ ์ฅํ์ง ์๊ณ ์กฐ์ธ์ ์์ํ๋ค. โญ๏ธ
[8] ํด์ ์กฐ์ธ ํ๋ ํต์ฌ
28๋ฒ
- โญ๏ธ ํด์ ์ฒด์ธ์ด ์ผ์ด๋์ง ์๋๋ก ์กฐ๊ฑด์ ์ ๋ฐ๊พธ๋ ๊ฒ !