MapleStory Finger Point Cute Line Smiley Blinking Hello Kitty Angel MapleStory Finger Point

๐Ÿ’Ž DataBase/๐Ÿ’Ž SQL-PL,SQL

หšโ‚Šโœฉโ€งโ‚Š [SQL] ๋ณต์ˆ˜ํ–‰ ํ•จ์ˆ˜ (๊ทธ๋ฃนํ•จ์ˆ˜) หšโ‚Šโœฉโ€งโ‚Š

HYEJU01 2024. 6. 20. 02:40

[๋ณต์ˆ˜ํ–‰ ํ•จ์ˆ˜]

์ „์ฒด ๋Œ€์ƒ ์ž‘์—…
์—ฌ๋Ÿฌ๊ฑด์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋™์‹œ์— ์ž…๋ ฅ ๋ฐ›์•„์„œ ๊ฒฐ๊ณผ๊ฐ’์„ 1๊ฐœ ๋งŒ๋“ค์–ด์ฃผ๋Š” ํ•จ์ˆ˜ (๊ทธ๋ฃนํ•จ์ˆ˜)

  • COUNT() : ์ž…๋ ฅ๋˜๋Š” ๋ฐ์ดํ„ฐ์˜ ์ด ๊ฑด์ˆ˜
  • SUM : ์ž…๋ ฅ๋˜๋Š” ๋ฐ์ดํ„ฐ์˜ ํ•ฉ๊ณ„ ๊ฐ’ ๊ตฌํ•ด์„œ ์ถœ๋ ฅ
  • AVG : ์ž…๋ ฅ๋˜๋Š” ๋ฐ์ดํ„ฐ์˜ ํ‰๊ท  ๊ฐ’ ๊ตฌํ•ด์„œ ์ถœ๋ ฅ
  • MAX : ์ž…๋ ฅ๋˜๋Š” ๋ฐ์ดํ„ฐ ์ค‘ ๊ฐ€์žฅ ํฐ ๊ฐ’ ๊ตฌํ•ด์„œ ์ถœ๋ ฅ
  • MIN : ์ž…๋ ฅ๋˜๋Š” ๋ฐ์ดํ„ฐ ์ค‘ ๊ฐ€์žฅ ์ž‘์€ ๊ฐ’ ์ถœ๋ ฅ
  • STDDEV : ์ž…๋ ฅ๋˜๋Š” ๋ฐ์ดํ„ฐ ๊ฐ’๋“ค์˜ ํ‘œ์ค€ ํŽธ์ฐจ ๊ฐ’ ์ถœ๋ ฅ 
  • VARIANCE : ์ž…๋ ฅ๋˜๋Š” ๋ฐ์ดํ„ฐ ๊ฐ’๋“ค์˜ ๋ถ„์‚ฐ ๊ฐ’ ์ถœ๋ ฅ
  • ROLLUP : ์ž…๋ ฅ๋˜๋Š” ๋ฐ์ดํ„ฐ์˜ ์†Œ๊ณ„๊ฐ’์„ ์ž๋™์œผ๋กœ ๊ณ„์‚ฐํ•ด์„œ ์ถœ๋ ฅ
  • CUBE : ์ž…๋ ฅ๋˜๋Š” ๋ฐ์ดํ„ฐ์˜ ์†Œ๊ณ„ ๋ฐ ์ „์ฒด ์ด๊ณ„๋ฅผ ์ž๋™ ๊ณ„์‚ฐ ํ›„ ์ถœ๋ ฅ
  • GROUPINGSET : ํ•œ ๋ฒˆ์˜ ์ฟผ๋ฆฌ๋กœ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํ•จ์ˆ˜๋“ค์„ ๊ทธ๋ฃน์œผ๋กœ ์ˆ˜ํ–‰ ๊ฐ€๋Šฅ

 

 

[GROUP BY ์ ˆ ] 

ํŠน์ • ์กฐ๊ฑด์œผ๋กœ ์„ธ๋ถ€์ ์ธ ๊ทธ๋ฃนํ™” ํ•˜๊ธฐ

๊ทธ๋ฃน๋ฐ”์ด ์ ˆ ๋’ค์— ์˜ค๋Š” ์ปฌ๋Ÿผ ๊ฐ’์„ ๊ธฐ์ค€์œผ๋กœ ๋ชจ์œผ๊ณ  ์ดํ›„ SELECT ์ ˆ์— ์ ํ˜€ ์žˆ๋Š” ๊ทธ๋ฃน ํ•จ์ˆ˜๋ฅผ ์ ์šฉํ•œ๋‹ค.

1) SELECT ์ ˆ์— ์‚ฌ์šฉ๋œ ๊ทธ๋ฃน ํ•จ์ˆ˜์ด์™ธ์˜ ์ปฌ๋Ÿผ, ํ‘œํ˜„์‹์€ ๋ฐ˜๋“œ์‹œ GROUP BY ์ ˆ์— ์‚ฌ์šฉ๋˜์–ด์•ผํ•œ๋‹ค.

2) GROUP BY ์ ˆ์—๋Š” ๋ฐ˜๋“œ์‹œ ์ปฌ๋Ÿผ๋ช…์ด ์‚ฌ์šฉ๋˜์–ด์•ผํ•œ๋‹ค.(Alias ์‚ฌ์šฉ์•ˆ๋จ)

 

 

 

[HAVING ์ ˆ]

๊ทธ๋ฃนํ•‘ํ•œ ์กฐ๊ฑด์œผ๋กœ ๊ฒ€์ƒ‰ํ•˜๊ธฐ

WHERE ์ ˆ์€ ๊ทธ๋ฃนํ•จ์ˆ˜๋ฅผ ๋น„๊ต์กฐ๊ฑด์œผ๋กœ ์‚ฌ์šฉ ๋ถˆ๊ฐ€

๊ทธ๋ฃน์กฐ๊ฑด์€ HAVING ์ ˆ์„ ์‚ฌ์šฉํ•œ๋‹ค.

 

 

 

[๊ทธ๋ฃน ํ•จ์ˆ˜ ์ข…๋ฅ˜]

  • LISTAGG() WITHIN GROUP ()  : ์‰ฝ๊ฒŒ ๊ทธ๋ฃนํ•‘ ํ•ด์ฃผ๋Š” ํ•จ์ˆ˜
  • PIVOT () : row ๋‹จ์œ„๋ฅผ column ๋‹จ์œ„๋กœ ๋ณ€๊ฒฝ 
  • UNPIVOT() : colummn ๋‹จ์œ„๋ฅผ row ๋‹จ์œ„๋กœ ๋ณ€๊ฒฝ
  • RANK () : ์ˆœ์œ„ ์ถœ๋ ฅ ํ•จ์ˆ˜ 
    - ํŠน์ • ๋ฐ์ดํ„ฐ ์ˆœ์œ„ : RANK() WITHIN GROUP( ORDER BY )
    - ์ „์ฒด ์ˆœ์œ„ ๋ณด๊ธฐ : RANK() OVER(ORDER BY)
  • DENSE_RANK () : ๋™์ผํ•œ ์ˆœ์œ„๋ฅผ ํ•˜๋‚˜์˜ ๊ฑด์ˆ˜๋กœ ์ทจ๊ธ‰ํ•˜์—ฌ ์—ฐ์†๋œ ์ˆœ์œ„ ๋ณด์—ฌ์ฃผ๊ธฐ 
  • ROW_NUMBER(): ๋™์ผํ•œ ๊ฐ’์ด๋ผ๋„ ๊ณ ์œ ํ•œ ์ˆœ์œ„๋ฅผ ๋ถ€์—ฌํ•จ (์ค‘๋ณต๋œ ์ˆœ์œ„๊ฐ€ ์—†์Œ)
  • LAG() : ์ด์ „ํ–‰ ๊ฐ’์„ ๊ฐ€์ ธ์˜ฌ ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ํ•จ์ˆ˜ (์‘์šฉ -> ์ „์ผ ํŒ๋งค ์ˆ˜๋Ÿ‰ ๊ธˆ์•ก ์ฐจ์ด ๋“ฑ๋“ฑ)
  • LEAD() : ์ดํ›„ ๊ฐ’์„ ๊ฐ€์ ธ์˜ค๋Š” ํ•จ์ˆ˜ 
  • SUM() OVER() : ๋ˆ„๊ณ„ ๊ตฌํ•˜๊ธฐ 
  • RATIO_TO_REPORT() : ๋น„์œจ์„ ๊ตฌํ•˜๋Š” ํ•จ์ˆ˜