์„œ๋ธŒ์ฟผ๋ฆฌ

- ํ•˜๋‚˜์˜ SQL ๋ช…๋ น๋ฌธ์˜ ๊ฒฐ๊ณผ๋ฅผ ๋‹ค๋ฅธ SQL ๋ช…๋ น๋ฌธ์— ์ „๋‹ฌํ•˜๊ธฐ ์œ„ํ•ด

  ๋‘ ๊ฐœ ์ด์ƒ์˜ SQL ๋ช…๋ น๋ฌธ์„ ํ•˜๋‚˜์˜ SQL๋ช…๋ น๋ฌธ์œผ๋กœ ์—ฐ๊ฒฐํ•˜์—ฌ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•

- ์„œ๋ธŒ์ฟผ๋ฆฌ์— ๋จผ์ € ์ฐพ๊ณ  ์‹ถ์€ ๋ฐ์ดํ„ฐ ์คŒ

- ์„œ๋ธŒ์ฟผ๋ฆฌ๋Š” ๊ด„ํ˜ธ๋กœ ๋‘˜๋Ÿฌ์‹ธ์•ผ ํ•จ

- ์„œ๋ธŒ์ฟผ๋ฆฌ๋Š” ๋น„๊ต ์—ฐ์‚ฐ์ž ์˜ค๋ฅธ์ชฝ์— ์œ„์น˜

 

์ฒ˜๋ฆฌ๊ณผ์ •

1. ์„œ๋ธŒ์ฟผ๋ฆฌ๋Š” ๋ฉ”์ธ์ฟผ๋ฆฌ๊ฐ€ ์‹คํ–‰๋˜๊ธฐ ์ „์— ํ•œ๋ฒˆ์”ฉ ์‹คํ–‰๋จ

2. ์„œ๋ธŒ์ฟผ๋ฆฌ์—์„œ ์‹คํ–‰๋œ ๊ฒฐ๊ณผ๊ฐ€ ๋ฉ”์ธ ์ฟผ๋ฆฌ์— ์ „๋‹ฌ๋˜์–ด ์ตœ์ข…์ ์ธ ๊ฒฐ๊ณผ ์ถœ๋ ฅ


๋‹จ์ผํ–‰ ์„œ๋ธŒ์ฟผ๋ฆฌ

-  ์„œ๋ธŒ์ฟผ๋ฆฌ์—์„œ ๋‹จ ํ•˜๋‚˜์˜ ํ–‰๋งŒ ๊ฒ€์ƒ‰ํ•˜์—ฌ ๋ฉ”์ธ์ฟผ๋ฆฌ์— ๋ฐ˜ํ™˜ํ•˜๋Š” ์งˆ์˜๋ฌธ

- ๋ฉ”์ธ์ฟผ๋ฆฌ์˜ WHERE์ ˆ์—์„œ ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ๊ฒฐ๊ณผ์™€ ๋น„๊ตํ•  ๊ฒฝ์šฐ์„ธ๋Š” 

  ๋ฐ˜๋“œ์‹œ ๋‹จ์ผํ–‰ ๋น„๊ต ์—ฐ์‚ฐ์ž ์ค‘ ํ•˜๋‚˜๋งŒ ์‚ฌ์šฉ

  • ๋‹จ์ผํ–‰ ๋น„๊ต ์—ฐ์‚ฐ์ž : =, >, >=, <, <=

- ์„œ๋ธŒ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ๋กœ ํ•˜๋‚˜์˜ ํ–‰๋งŒ ์ถœ๋ ฅ

  • ๋ฐฉ๋ฒ• 1 : ์„œ๋ธŒ์ฟผ๋ฆฌ ์กฐ๊ฑด์ ˆ์—์„œ ๊ธฐ๋ณธํ‚ค๋‚˜ ๊ณ ์œ ํ‚ค๋ฅผ '=' ๋น„๊ต ํ•˜๋Š” ๋ฐฉ์‹
  • ๋ฐฉ๋ฒ• 2 : ์„œ๋ธŒ์ฟผ๋ฆฌ SELECT์ ˆ์—์„œ ์ „์ฒด ์ง‘ํ•ฉ์„ ๋Œ€์ƒ์œผ๋กœ ๊ทธ๋ฃน ํ•จ์ˆ˜ ์‚ฌ์šฉ

๋‹ค์ค‘ํ–‰ ์„œ๋ธŒ์ฟผ๋ฆฌ

-  ์„œ๋ธŒ์ฟผ๋ฆฌ์—์„œ ๋ฐ˜ํ™˜๋˜๋Š” ๊ฒฐ๊ณผ ํ–‰์ด ํ•˜๋‚˜ ์ด์ƒ์ผ ๋•Œ ์‚ฌ์šฉ

- ๋ฉ”์ธ์ฟผ๋ฆฌ์˜ WHERE์ ˆ์—์„œ ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ๊ฒฐ๊ณผ์™€ ๋น„๊ตํ•  ๊ฒฝ์šฐ์—๋Š” 

  ๋‹ค์ค‘ํ–‰ ๋น„๊ต ์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•ด ๋น„๊ต

  • ๋‹ค์ค‘ํ–‰ ๋น„๊ต ์—ฐ์‚ฐ์ž : IN, ANY, SOME, ALL, EXISTS
  • ๋‹ค์ค‘ํ–‰ ๋น„๊ต ์—ฐ์‚ฐ์ž๋Š” ๋‹จ์ผํ–‰ ๋น„๊ต ์—ฐ์‚ฐ์ž์™€ ๊ฒฐํ•ฉํ•˜์—ฌ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
์ข…๋ฅ˜ ์˜๋ฏธ
IN ๋ฉ”์ธ์ฟผ๋ฆฌ์˜ ๋น„๊ต ์กฐ๊ฑด์ด ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ๊ฒฐ๊ณผ ์ค‘์—์„œ ํ•˜๋‚˜๋ผ๋„ ์ผ์น˜ํ•˜๋ฉด ์ฐธ
 =  ๋น„๊ต๋งŒ ๊ฐ€๋Šฅ
ANY, SOME ๋ฉ”์ธ์ฟผ๋ฆฌ์˜ ๋น„๊ต ์กฐ๊ฑด์ด ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ๊ฒฐ๊ณผ ์ค‘์—์„œ ํ•˜๋‚˜ ์ด์ƒ ์ผ์น˜ํ•˜๋ฉด ์ฐธ
= ์™€ <, > ๋ฒ”์œ„ ๋น„๊ต๋„ ๊ฐ€๋Šฅ
ALL ๋ฉ”์ธ์ฟผ๋ฆฌ์˜ ๋น„๊ต ์กฐ๊ฑด์ด ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ๊ฒฐ๊ณผ ์ค‘์—์„œ ๋ชจ๋“  ๊ฐ’์ด ์ผ์น˜ํ•˜๋ฉด ์ฐธ
EXISTS ๋ฉ”์ธ์ฟผ๋ฆฌ์˜ ๋น„๊ต ์กฐ๊ฑด์ด ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ๊ฒฐ๊ณผ ์ค‘์—์„œ ๋งŒ์กฑํ•˜๋Š” ๊ฐ’์ด ํ•˜๋‚˜๋ผ๋„ ์กด์žฌํ•˜๋ฉด ์ฐธ

 

> IN

- ๋ฉ”์ธ์ฟผ๋ฆฌ์˜ ๋น„๊ต ์กฐ๊ฑด์—์„œ ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ์ถœ๋ ฅ ๊ฒฐ๊ณผ์™€ ํ•˜๋‚˜๋ผ๋„ ์ผ์น˜ํ•˜๋ฉด ๋ฉ”์ธ์ฟผ๋ฆฌ ์กฐ๊ฑด์ ˆ์ด ์ฐธ์ด ๋˜๋Š” ์—ฐ์‚ฐ์ž

- ' = ' ์—ฐ์‚ฐ์ž๋ฅผ OR๋กœ ์—ฐ๊ฒฐํ•œ ๊ฒƒ๊ณผ ๊ฐ™์€ ์˜๋ฏธ

 

> ANY

- ๋ฉ”์ธ์ฟผ๋ฆฌ์˜ ๋น„๊ต ์กฐ๊ฑด์—์„œ ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ์ถœ๋ ฅ ๊ฒฐ๊ณผ์™€ ํ•˜๋‚˜๋ผ๋„ ์ผ์น˜ํ•˜๋ฉด ๋ฉ”์ธ์ฟผ๋ฆฌ ์กฐ๊ฑด์ ˆ์ด ์ฐธ์ด ๋˜๋Š” ์—ฐ์‚ฐ์ž

- > , < ๊ณผ ๊ฐ™์€ ๋ฒ”์œ„ ๋น„๊ต๋„ ๊ฐ€๋Šฅ   (IN ์—ฐ์‚ฐ์ž๋Š” = ๋น„๊ต๋งŒ ๊ฐ€๋Šฅ)

โ–ช  > ANY (์„œ๋ธŒ์ฟผ๋ฆฌ)  : ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ์ตœ์†Œ ๊ฐ’๋ณด๋‹ค ํฌ๋ฉด (์„œ๋ธŒ์ฟผ๋ฆฌ ์ค‘์— ํ•˜๋‚˜๋ผ๋„ ํฌ๋ฉด -> ์ตœ์†Œ๋ณด๋‹ค ํฌ๋ฉด)

โ–ช  < ANY (์„œ๋ธŒ์ฟผ๋ฆฌ)  : ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ์ตœ๋Œ€ ๊ฐ’๋ณด๋‹ค ์ž‘์œผ๋ฉด (์„œ๋ธŒ์ฟผ๋ฆฌ ์ค‘์— ํ•˜๋‚˜๋ผ๋„ ์ž‘์œผ๋ฉด -> ์ตœ๋Œ€๋ณด๋‹ค ์ž‘์œผ๋ฉด)

 

> ALL

- ๋ฉ”์ธ์ฟผ๋ฆฌ์˜ ๋น„๊ต ์กฐ๊ฑด์—์„œ ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ์ถœ๋ ฅ ๊ฒฐ๊ณผ์™€ ๋ชจ๋‘ ์ผ์น˜ํ•˜๋ฉด ๋ฉ”์ธ์ฟผ๋ฆฌ ์กฐ๊ฑด์ ˆ์ด ์ฐธ์ด ๋˜๋Š” ์—ฐ์‚ฐ์ž

โ–ช  > ALL (์„œ๋ธŒ์ฟผ๋ฆฌ)  : ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ์ตœ๋Œ€ ๊ฐ’๋ณด๋‹ค ํฌ๋ฉด (์„œ๋ธŒ์ฟผ๋ฆฌ ์ค‘์— ๋ชจ๋‘๋ณด๋‹ค ํฌ๋ฉด -> ์ตœ๋Œ€๋ณด๋‹ค ํฌ๋ฉด)

โ–ช  < ALL (์„œ๋ธŒ์ฟผ๋ฆฌ)  : ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ์ตœ์†Œ ๊ฐ’๋ณด๋‹ค ์ž‘์œผ๋ฉด (์„œ๋ธŒ์ฟผ๋ฆฌ ์ค‘ ๋ชจ๋‘๋ณด๋‹ค ์ž‘์œผ๋ฉด -> ์ตœ์†Œ๋ณด๋‹ค ์ž‘์œผ๋ฉด)

 

> EXISTS

- ์„œ๋ธŒ์ฟผ๋ฆฌ์—์„œ ๊ฒ€์ƒ‰๋œ ๊ฒฐ๊ณผ๊ฐ€ ํ•˜๋‚˜๋ผ๋„ ์กด์žฌํ•˜๋ฉด ๋ฉ”์ธ์ฟผ๋ฆฌ ์กฐ๊ฑด์ ˆ์ด ์ฐธ์ด ๋˜๋Š” ์—ฐ์‚ฐ์ž

- ์„œ๋ธŒ์ฟผ๋ฆฌ์—์„œ ๊ฒ€์ƒ‰๋œ ๊ฒฐ๊ณผ๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š์œผ๋ฉด ๋ฉ”์ธ์ฟผ๋ฆฌ์˜ ์กฐ๊ฑด์ ˆ์€ ๊ฑฐ์ง“

 

> NOT EXISTS

- EXISTS์™€ ์ƒ๋ฐ˜๋˜๋Š” ์—ฐ์‚ฐ์ž

- ์„œ๋ธŒ์ฟผ๋ฆฌ์—์„œ ๊ฒ€์ƒ‰๋œ ๊ฒฐ๊ณผ๊ฐ€ ํ•˜๋‚˜๋ผ๋„ ์กด์žฌํ•˜์ง€ ์•Š์œผ๋ฉด ๋ฉ”์ธ์ฟผ๋ฆฌ์˜ ์กฐ๊ฑด์ ˆ์ด ์ฐธ์ด ๋˜๋Š” ์—ฐ์‚ฐ์ž


๋‹ค์ค‘ ์นผ๋Ÿผ ์„œ๋ธŒ์ฟผ๋ฆฌ

-  ์„œ๋ธŒ์ฟผ๋ฆฌ์—์„œ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์นผ๋Ÿผ ๊ฐ’์„ ๊ฒ€์ƒ‰ํ•˜์—ฌ ๋ฉ”์ธ์ฟผ๋ฆฌ์˜ ์กฐ๊ฑด์ ˆ๊ณผ ๋น„๊ตํ•˜๋Š” ์„œ๋ธŒ์ฟผ๋ฆฌ

- ๋ฉ”์ธ์ฟผ๋ฆฌ์˜ ์กฐ๊ฑด์ ˆ์—์„œ๋„ ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ์นผ๋Ÿผ ์ˆ˜๋งŒํผ ์ง€์ •ํ•ด์•ผ ํ•จ

- ์ข…๋ฅ˜

  • PAIRWISE : ์นผ๋Ÿผ์„ ์Œ์œผ๋กœ ๋ฌถ์–ด์„œ ๋™์‹œ์— ๋น„๊ต
  • UNPAIRWISE : ์นผ๋Ÿผ๋ณ„๋กœ ๋‚˜๋ˆ„์–ด์„œ ๋น„๊ตํ•œ ํ›„, AND ์—ฐ์‚ฐ

 

> PAIRWISE

- ๋ฉ”์ธ์ฟผ๋ฆฌ์™€ ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ๋น„๊ต ๋Œ€์ƒ ์นผ๋Ÿผ์„ ์Œ์œผ๋กœ ๋ฌถ์–ด์„œ ํ–‰๋ณ„๋กœ ๋น„๊ตํ•˜๋Š” ๋ฐฉ๋ฒ•

- ๋ฉ”์ธ์ฟผ๋ฆฌ์™€ ์„œ๋ธŒ์ฟผ๋ฆฌ์—์„œ ๋น„๊ตํ•˜๋Š” ์นผ๋Ÿผ์˜ ์ˆ˜๋Š” ๋ฐ˜๋“œ์‹œ ๋™์ผํ•ด์•ผ ํ•จ

select ์นผ๋Ÿผ_๋ฆฌ์ŠคํŠธ
from ํ…Œ์ด๋ธ”1
where (์นผ๋Ÿผ1, ์นผ๋Ÿผ2, ... ) in (select ์นผ๋Ÿผ1, ์นผ๋Ÿผ2, ...
                               from ํ…Œ์ด๋ธ”2
                               where ์กฐ๊ฑด);

 

> UNPAIRWISE

- ๋ฉ”์ธ์ฟผ๋ฆฌ์™€ ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ๋น„๊ต ๋Œ€์ƒ ์นผ๋Ÿผ์„ ๋ถ„๋ฆฌํ•˜์—ฌ ๊ฐœ๋ณ„์ ์œผ๋กœ ๋น„๊ตํ•œ ํ›„ AND ์—ฐ์‚ฐ์— ์˜ํ•ด ์ตœ์ข… ๊ฒฐ๊ณผ ์ถœ๋ ฅ

- ๊ฐ ์นผ๋Ÿผ์ด ๋™์‹œ์— ๋งŒ์กฑํ•˜์ง€ ์•Š๋”๋ผ๋„ ๊ฐœ๋ณ„์ ์œผ๋กœ ๋งŒ์กฑํ•˜๋Š” ๊ฒฝ์šฐ์—๋Š” ๋น„๊ต ์กฐ๊ฑด์ด ์ฐธ์ด ๋˜์–ด ๊ฒจ๋กธ ์ถœ๋ ฅ ๊ฐ€๋Šฅ (์ •ํ™•ํ•œ ๊ฐ’ X)

select ์นผ๋Ÿผ_๋ฆฌ์ŠคํŠธ
from ํ…Œ์ด๋ธ”1
where ์นผ๋Ÿผ1 in (select ์นผ๋Ÿผ1
                from ํ…Œ์ด๋ธ”2
                where ์กฐ๊ฑด)
 and  ์นผ๋Ÿผw in (select ์นผ๋Ÿผ2
                from ํ…Œ์ด๋ธ”2
                where ์กฐ๊ฑด);

์ƒํ˜ธ์—ฐ๊ด€ ์„œ๋ธŒ์ฟผ๋ฆฌ

-  ๋ฉ”์ธ์ฟผ๋ฆฌ์ ˆ๊ณผ ์„œ๋ธŒ์ฟผ๋ฆฌ๊ฐ„์— ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๋ฅผ ๊ตํ™˜ํ•˜๋Š” ์„œ๋ธŒ์ฟผ๋ฆฌ

- ๋ฉ”์ธ์ฟผ๋ฆฌ์™€ ์„œ๋ธŒ์ฟผ๋ฆฌ๊ฐ„์˜ ๊ฒฐ๊ณผ๋ฅผ ๊ตํ™˜ํ•˜๊ธฐ ์œ„ํ•˜์—ฌ ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ WHERE ์กฐ๊ฑด์ ˆ์—์„œ ๋ฉ”์ธ์ฟผ๋ฆฌ์˜ ํ…Œ์ด๋ธ”๊ณผ ์—ฐ๊ฒฐ

- ํ–‰์„ ๋น„๊ตํ•  ๋•Œ๋งˆ๋‹ค ๊ฒฐ๊ณผ๋ฅผ ๋ฉ”์ธ์ฟผ๋ฆฌ๋กœ ๋ฐ˜ํ™˜ -> ์ฒ˜๋ฆฌ ์„ฑ๋Šฅ ์ €ํ•˜๋  ์ˆ˜ ์žˆ์Œ

select ์นผ๋Ÿผ_๋ฆฌ์ŠคํŠธ
from ํ…Œ์ด๋ธ”1
where [์นผ๋Ÿผ|ํ‘œํ˜„์‹] ์—ฐ์‚ฐ์ž (select [์นผ๋Ÿผ|ํ‘œํ˜„์‹] 
                            from ํ…Œ์ด๋ธ”2
                            where ํ…Œ์ด๋ธ”2.์นผ๋Ÿผ๋ช… ์—ฐ์‚ฐ์ž ํ…Œ์ด๋ธ”1.์นผ๋Ÿฌ๋ช…);


 

 

์„œ๋ธŒ์ฟผ๋ฆฌ ์ฃผ์˜์‚ฌํ•ญ

- ๋‹จ์ผํ–‰ ์„œ๋ธŒ์ฟผ๋ฆฌ์—์„œ ์˜ค๋ฅ˜ ๋ฐœ์ƒ

  • ๋ณต์ˆ˜ ํ–‰ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์„œ๋ธŒ์ฟผ๋ฆฌ์™€ ๋‹จ์ผํ–‰ ๋น„๊ต์—ฐ์‚ฐ์ž ํ•จ๊ป˜ ์‚ฌ์šฉ
  • ์„œ๋ธŒ์ฟผ๋ฆฌ์—์„œ ๋ฐ˜ํ™˜๋˜๋Š” ์นผ๋Ÿผ์˜ ์ˆ˜์™€ ๋ฉ”์ธ์ฟผ๋ฆฌ์—์„œ ๋น„๊ต๋˜๋Š” ์นผ๋Ÿผ ์ˆ˜๊ฐ€ ์ผ์น˜ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ

- ์„œ๋ธŒ์ฟผ๋ฆฌ ๋‚ด์—์„œ order by์ ˆ ์‚ฌ์šฉํ•˜๋ฉด ์˜ค๋ฅ˜ -> ๋ฉ”์ธ์ฟผ๋ฆฌ์—์„œ order by ์‚ฌ์šฉ

- ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ๊ฒฐ๊ณผ๊ฐ€ null -> '์„ ํƒ๋œ ๋ ˆ์ฝ”๋“œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค' ๋ฐ˜ํ™˜


์Šค์นผ๋ผ ์„œ๋ธŒ์ฟผ๋ฆฌ

- select ์ ˆ์— ์‚ฌ์šฉํ•˜๋Š” ์„œ๋ธŒ์ฟผ๋ฆฌ

  • 1. ์Šค์นผ๋ผ ์„œ๋ธŒ์ฟผ๋ฆฌ๋Š” ๋‹จ์ผํ–‰์ด์–ด์•ผ ํ•œ๋‹ค
  • 2. ์Šค์นผ๋ผ ์„œ๋ธŒ์ฟผ๋ฆฌ๋Š” ์นผ๋Ÿผ์ด ํ•˜๋‚˜์—ฌ์•ผ ํ•œ๋‹ค

 

์ธ๋ผ์ธ ๋ทฐ ์„œ๋ธŒ์ฟผ๋ฆฌ

- from ์ ˆ์— ์‚ฌ์šฉํ•˜๋Š” ์„œ๋ธŒ์ฟผ๋ฆฌ

  • ์ธ๋ผ์ธ ๋ทฐ์— ๋“ค์–ด๊ฐ€๋Š” ํ•จ์ˆ˜๋“ค์€ ๋ณ„์นญ ๋ถ™์–ด์•ผ ํ•จ

 

 

 

 

 


์ฐธ๊ณ ๋„์„œ : ์˜ค๋ผํด ์ค‘์‹ฌ์˜ SQL๋ฐฐ์›€ํ„ฐ, ์šฐ์šฉํƒœ ์™ธ ๊ณต์ €, ์ƒ๋Šฅ์ถœํŒ์‚ฌ, 2007๋…„

๋ฐ˜์‘ํ˜•

BELATED ARTICLES

more