[oracle] ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ธฐ๋ณธ ๋ช…๋ น์–ด2 (group by, distinct, join, case, rownum, null, dual)

2021. 10. 14. 15:46ใ†๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

728x90

 

1. group by

select ํ•„๋“œ๋ช… from ํ…Œ์ด๋ธ”๋ช… where ์กฐ๊ฑด์‹ 

group by ํ•„๋“œ๋ช…1, ํ•„๋“œ๋ช…2, ...

having ๊ทธ๋ฃน ๋‚ด ์กฐ๊ฑด์‹; 

2. distinct

distinct ๊ตฌ๋ฌธ์€ ๋‚˜์—ดํ•œ ํ•„๋“œ ๊ฐ’์„ ์ค‘๋ณต ์—†์ด ๊ตฌํ•œ๋‹ค. 

select distinct ํ•„๋“œ๋ช… from ํ…Œ์ด๋ธ” ๋ช… where ์กฐ๊ฑด; 

 

3. join โญโญโญโญโญ

select * from ํ•™์ƒํ…Œ์ด๋ธ” a 

join ํ•™์ƒํ…Œ์ด๋ธ” b

on a.ํ•™์ƒ ์ฝ”๋“œ = b.ํ•™์ƒ์ฝ”๋“œ ;

 

1๏ธโƒฃ join : ๊ธฐ์ค€ ํ…Œ์ด๋ธ”๊ณผ ๋Œ€์ƒ ํ…Œ์ด๋ธ”์— ๋งค์นญํ•˜๋Š” ํ•„๋“œ๊ฐ’์ด ์žˆ๋Š” ๊ฒฝ์šฐ์— ๊ฒ€์ƒ‰ํ•œ๋‹ค. 

2๏ธโƒฃ left join : ๊ธฐ์ค€ ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  ํ•„๋“œ๊ฐ’์„ ๋ณด์ด๊ณ  ๋Œ€์ƒ ํ…Œ์ด๋ธ”์— ๋งค์นญํ•˜๋Š” ํ•„๋“œ๊ฐ’์ด ์žˆ๋Š” ๊ฒฝ์šฐ์— ๊ฒ€์ƒ‰ํ•˜๊ณ , ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ๊ณต๋ฐฑ์œผ๋กœ ๋ณด์ธ๋‹ค. 

3๏ธโƒฃ right join : ๋Œ€์ƒ ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  ํ•„๋“œ๊ฐ’์„ ๋ณด์ด๊ณ , ๊ธฐ์ค€ ํ…Œ์ด๋ธ”์— ๋งค์นญ๋˜๋Š” ํ•„๋“œ๊ฐ’์ด ์žˆ๋Š” ๊ฒฝ์šฐ์— ๊ฒ€์ƒ‰ํ•˜๊ณ , ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ๊ณต๋ฐฑ์œผ๋กœ ๋ณด์ธ๋‹ค. 

4๏ธโƒฃ full outer join : ๊ธฐ์ค€ ํ…Œ์ด๋ธ”๊ณผ ๋Œ€์ƒ ํ…Œ์ด๋ธ”์— ์ƒํ˜ธ ๋งค์นญํ•˜๋Š” ํ•„๋“œ๊ฐ’์ด ์žˆ๋Š” ๊ฒฝ์šฐ์— ๊ฒ€์ƒ‰ํ•˜๊ณ , ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ๊ณต๋ฐฑ์œผ๋กœ ๋ณด์ธ๋‹ค. 

 

join ๋ช…๋ น ์‚ฌ์šฉ ์•ˆํ•˜๊ณ  ํ…Œ์ด๋ธ” ์—ฐ๊ด€ ๊ฒ€์ƒ‰

 

left join

 

right join

 

 

full outer join

 

4. case 

case ๊ตฌ๋ฌธ์€ ์กฐ๊ฑด์— ๋งŒ์กฑํ•˜๋Š” ๊ฒฐ๊ณผ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. 

when ๊ตฌ๋ฌธ์€ '์กฐ๊ฑด ๋Œ€์ƒ' ์— ๋Œ€ํ•œ ๋น„๊ตฃ๊ฐ’์„ ์ง€์ •ํ•˜๊ณ , 

then ๊ตฌ๋ฌธ์€ ์ง€์ •ํ•œ ๊ฒฐ๊ณผ๋ฅผ ์ง€์ •ํ•œ๋‹ค. 

 

 

5. rownum 

rownum ๊ตฌ๋ฌธ์€ ๋ ˆ์ฝ”๋“œ๋ฅผ ๊ฒ€์ƒ‰ํ•  ๋•Œ ์ƒ์„ฑ๋˜๋Š” ํ–‰ ๋ฒˆํ˜ธ๋ฅผ ๊ตฌํ•œ๋‹ค. 

 

6. null 

select ํ•„๋“œ๋ช… from ํ…Œ์ด๋ธ”๋ช… 

where ํ•„๋“œ๋ช… is (not) null; 

 

 

7. dual

dualํ…Œ์ด๋ธ”์€ ์˜ค๋ผํด์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ์„ค์น˜๋˜๋Š” SYSTEM ๊ถŒํ•œ์˜ 1ํ–‰์œผ๋กœ ๊ตฌ์„ฑ๋œ ํ…Œ์ด๋ธ”์ด๋‹ค. 

dual ํ…Œ์ด๋ธ”์€ 'X' ๊ฐ’์ธ dummy ํ•„๋“œ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. 

dual ํ…Œ์ด๋ธ”๋กœ ๊ฒ€์ƒ‰๋ณด๋‹ค๋Š” ์ˆ˜์น˜๊ณ„์‚ฐ, ๋ฌธ์ž ์ถœ๋ ฅ๊ฐ’, ํ•จ์ˆ˜ ์‹คํ–‰ ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•˜๋Š”๋ฐ ์‚ฌ์šฉํ•œ๋‹ค. 

 

 

 

 

 

 

 

 

 

 

 

728x90