SQL
5
SQL :: ANSI JOIN ๊ณผ Oracle JOIN
1
2024.04.19
ํ์ mssql ๋ฐ์ ์ ํ ์ผ์ด ์์ด์ ์ค๋ผํด ๋ฌธ๋ฒ์ ์์ํ๋ฐ...์กฐ์ธ์ ๊ฑธ ๋ (+) ๋ก ํ๊ธฐํ๋ ๊ฒฝ์ฐ๊ฐ ์์๋ค.์ด๊ฒ ๋ญ๊ฐ ํ๊ณ ์ฐพ์๋ณด๋ ์ฐ๋ฆฌ๊ฐ ๊ธฐ์กด์ ์ฌ์ฉํ๋ outer join, inner join, left join ๋ฑ ์ง์ ํ์ฌ ์ฌ์ฉํ๋ ๊ฒ์ ANSI JOIN ์ด๋ผ๊ณ ํ๊ณ (+)๋ฅผ ์ฌ์ฉํ์ฌ ์กฐ์ธ ์ข
๋ฅ๋ฅผ ์ง์ ํ๋ ๊ฒ์ Oracle JOIN ์ด๋ผ๊ณ ํ๋จ๋ค.. ๋ค์ด๊ฐ๊ธฐ์ ์์ SQL JOIN์ ์ข
๋ฅ๋ถํฐ ์์๋ณด์. JOIN ์ ์ข
๋ฅ* INNER JOIN* LEFT OUTER JOIN* RIGHT OUTER JOIN* CROSS JOIN* FULL OUTER JOIN ์ด๋ ๊ฒ ์๋๋ฐ ๋ณดํต ๋ง์ด ์ฌ์ฉํ๋ ๊ฑดINNER JOIN ๊ณผ LEFT/RIGHT OUTER JOIN ์ ๋๊ฐ ๋์๊ฒ ๋ค..
Mybatis :: ๋ฌ๋ฌ($)์ ์ต(#)์ ์ฐจ์ด
2024.01.16
ํ๋ผ๋ฏธํฐ ๋งคํ์ ํ๋ ๋ฐ์ ์ฌ์ฉํ๋ $์ # ๋๊ฐ์ง์ ์ฐจ์ด์ ๋ํด ์์๋ณด๋๋ก ํ๊ฒ ๋ค. # PreparedStatement๋ฅผ ์๋ฏธ ํ๋ผ๋ฏธํฐ๊ฐ String ํํ๋ก ๋ค์ด์ ์๋์ผ๋ก(' ') ํ๋ผ๋ฏธํฐ ํํ๊ฐ ๋จ #{user_id} ์ ๊ฐ์ด 'neeon'์ด๋ผ๋ฉด user_id = 'neeon' ํํ๊ฐ ๋จ ์ฟผ๋ฆฌ ์ฃผ์
์ ์๋ฐฉํ ์ ์์ด ๋ณด์ ์ธก๋ฉด์์ ์ ๋ฆฌ ์ ์ ์ธ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ์บ์ฑ์ ํด์ ์ฌํ์ฉํ ์ ์์ด์ ํจ์จ์ ์ $ Statement๋ฅผ ์๋ฏธ ํด๋น ์ปฌ๋ผ์ ์๋ฃํ์ ๋ง์ถ์ด ํ๋ผ๋ฏธํฐ์ ์๋ฃํ์ด ๋ณ๊ฒฝ๋จ ํ๋ผ๋ฏธํฐ๊ฐ ๋ฐ๋ก ์ถ๋ ฅ๋จ. ์ฟผ๋ฆฌ ์ฃผ์
์ ์๋ฐฉํ ์ ์์ด ๋ณด์ ์ธก๋ฉด์์ ๋ถ๋ฆฌํ๋ฏ๋ก ์ฌ์ฉ์์ ์
๋ ฅ์ ์ ๋ฌํ ๋๋ ์ฌ์ฉํ์ง ์์ (SQL Injection) ํ
์ด๋ธ์ด๋ ์ปฌ๋ผ๋ช
์ ํ๋ผ๋ฏธํฐ๋ก ์ ๋ฌํ๊ณ ์ถ์ ๋ ์ฌ์ฉํจ ์ฐจ์ด์ ..
MSSQL :: SET STATISITCS
2024.01.05
์ฟผ๋ฆฌ๋ฅผ ์ง๋ค๋ณด๋ฉด ์ฟผ๋ฆฌ ์ฑ๋ฅ ๋ถ์์ด ํ์ํ ์ผ์ด์ค๊ฐ ์๊ธด๋ค. ๊ทธ๋ ์ฌ์ฉํ๋ ๊ฒ์ด SET STATISTICS. ๊ด๋ จ๋ ์
ํ
์ ๋ํด ์์๋ณด๋๋ก ํ๊ฒ ๋ค. ์คํ ํต๊ณ ์ ๋ณด์ ๊ด๋ จ๋ IO SET STATISTICS IO ON SET STATISTICS IO OFF Statistics ์ IO ์ต์
์ ์ผ๋ฉด ํต๊ณ ์ ๋ณด๊ฐ ํ์๋๋ค. ์ด๋ฐ ์์ผ๋ก message ์ฐฝ์์ ํ์ธ์ด ๊ฐ๋ฅํ๋ค. ํ์ธํ ์ ์๋ ์ ๋ณด Table ํ
์ด๋ธ ์ ๋ณด Scan Count ์คํ๋ ๊ฒ์ ์ Logical Reads ๋ฆฌ์ ์ฝ๊ธฐ ์. ๋ฐ์ดํฐ ์บ์์์ ์ฝ์ ํ์ด์ง ์. Physical Reads ๋ฌผ๋ฆฌ์ ์ฝ๊ธฐ ์. ๋์คํฌ์์ ์ฝ์ ํ์ด์ง ์. Read-ahead Reads ๋ฏธ๋ฆฌ ์ฝ๊ธฐ ์. ์ฟผ๋ฆฌ์ ๋ํด ์บ์์ ๋ฃ์ด์ง ํ์ด์ง ์ LOB Logical Read..
SQL :: ์์ N๊ฐ ๋ฐ์ดํฐ ์ถ๋ ฅํ๊ธฐ (mssql, oracle, mysql)
2023.09.14
1. MSSQL SELECT TOP 100 name, age, dept from [table๋ช
]; 2. ORACLE SELECT name, age, dept from [table๋ช
] where rownum
SQL :: ์ตํฐ๋ง์ด์ ์กฐ์ธ(Optimizer Join)
2023.09.13
Nested Loop ์กฐ์ธ - ํ๋์ ํ
์ด๋ธ์์ ๋ฐ์ดํฐ๋ฅผ ๋จผ์ ์ฐพ๊ณ , ๊ทธ ๋ค์ ํ
์ด๋ธ์ ์กฐ์ธํ๋ ๋ฐฉ์ - ๋จผ์ ์กฐํ ๋๋ ํ
์ด๋ธ์ Outer Table ์ด๋ผ๊ณ ํ๊ณ , ๊ทธ ๋ค์ ์กฐํ๋๋ ํ
์ด๋ธ์ Inner Table. ์ฝ๋ฉ ํํ๋ก ์ค์ ํด๋ณด์๋ฉด... for(i=0; i