Home > 2024 > SQL > ๐Ÿ’‰[SQL] SUM, AVG, COUNT, MIN, MAX

๐Ÿ’‰[SQL] SUM, AVG, COUNT, MIN, MAX
SQL

SUM

โ€˜SUMโ€™ ํ•จ์ˆ˜๋Š” SQL์—์„œ ํŠน์ • ์—ด(column)์— ํฌํ•จ๋œ ์ˆซ์ž ๊ฐ’๋“ค์˜ ํ•ฉ๊ณ„๋ฅผ ๊ณ„์‚ฐํ•  ๋•Œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

  • ์ด๋Š” ์ง‘๊ณ„ ํ•จ์ˆ˜์˜ ํ•œ ์ข…๋ฅ˜๋กœ, ์ฃผ๋กœ โ€˜GROUP BYโ€™ ์ ˆ๊ณผ ํ•จ๊ผ ์‚ฌ์šฉ๋˜์–ด ์—ฌ๋Ÿฌ ๊ทธ๋ฃน์˜ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ํ•ฉ๊ณ„๋ฅผ ๊ตฌํ•˜๊ฑฐ๋‚˜, ์ „์ฒด ํ…Œ์ด๋ธ”์—์„œ ํŠน์ • ์—ด์˜ ์ดํ•ฉ์„ ๊ณ„์‚ฐํ•˜๋Š” ๋ฐ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
  • โ€˜SUMโ€™ ํ•จ์ˆ˜๋Š” ๋ณด๊ณ ์„œ ์ƒ์„ฑ, ๋ฐ์ดํ„ฐ ๋ถ„์„, ์žฌ๋ฌด ๊ณ„์‚ฐ ๋“ฑ ๋‹ค์–‘ํ•œ ์ƒํ™ฉ์—์„œ ์œ ์šฉํ•˜๊ฒŒ ํ™œ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

โ€˜SUMโ€™ ์‚ฌ์šฉ ์˜ˆ

  • ์ „์ฒด ํ•ฉ๊ณ„ ๊ณ„์‚ฐ : ๋ชจ๋“  ์ฃผ๋ฌธ์˜ ์ด ๊ธˆ์•ก์„ ๊ณ„์‚ฐํ•˜๊ณ  ์‹ถ์„ ๋•Œ
    SELECT SUM(total_price) FROM orders;
    

    ์ด ์ฟผ๋ฆฌ๋Š” โ€˜ordersโ€™ ํ…Œ์ด๋ธ”์˜ โ€˜total_priceโ€™ ์—ด์— ์žˆ๋Š” ๋ชจ๋“  ๊ฐ’์˜ ํ•ฉ๊ณ„๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

  • ๊ทธ๋ฃน๋ณ„ ํ•ฉ๊ณ„ ๊ณ„์‚ฐ : ๊ฐ ๋ถ€์„œ๋ณ„ ์ง์›๋“ค์˜ ์ด ๊ธ‰์—ฌ๋ฅผ ๊ณ„์‚ฐํ•˜๊ณ  ์‹ถ์„ ๋–„
    SELECT department, SUM(salary) FROM employees GROUP BY department;
    

    ์ด ์ฟผ๋ฆฌ๋Š” โ€˜employeesโ€™ ํ…Œ์ด๋ธ”์—์„œ ๊ฐ โ€˜departmentโ€™ ๋ณ„๋กœ โ€˜salaryโ€™ ์—ด์˜ ํ•ฉ๊ณ„๋ฅผ ๊ณ„์‚ฐํ•˜์—ฌ, ๊ฐ ๋ถ€์„œ์˜ ์ด ๊ธ‰์—ฌ๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

  • ์กฐ๊ฑด๋ถ€ ํ•ฉ๊ณ„ ๊ณ„์‚ฐ : 2023๋…„์— ์ด๋ฃจ์–ด์ง„ ๋ชจ๋“  ํŒ๋งค์˜ ์ด์•ก์„ ๊ณ„์‚ฐํ•˜๊ณ  ์‹ถ์„ ๋•Œ
    SELECT SUM(sales_amount) FROM sales WHERE year = 2023;
    

    ์ด ์ฟผ๋ฆฌ๋Š” โ€˜salesโ€™ ํ…Œ์ด๋ธ”์—์„œ โ€˜yearโ€™ ์—ด์ด 2023์ธ ๋ชจ๋“  ํ–‰์˜ โ€˜sales_amountโ€™ ์—ด ๊ฐ’์˜ ํ•ฉ๊ณ„๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

โ€˜SUMโ€™ ํ•จ์ˆ˜์˜ ํŠน์ง•

  • โ€˜SUMโ€™ ํ•จ์ˆ˜๋Š” ์ˆซ์ž ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•ด์„œ๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋ฌธ์ž์—ด์ด๋‚˜ ๋‚ ์งœ ๋“ฑ์˜ ๋ฐ์ดํ„ฐ ํƒ€์ž…์—๋Š” ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
  • โ€˜NULLโ€™ ๊ฐ’์„ ํฌํ•จํ•˜๋Š” ์—ด์— โ€˜SUMโ€™ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ, โ€˜NULLโ€™ ๊ฐ’์€ 0์œผ๋กœ ๊ฐ„์ฃผ๋˜์ง€ ์•Š๊ณ , ๋‹จ์ˆœํžˆ ๋ฌด์‹œ๋ฉ๋‹ˆ๋‹ค.
    • ์ฆ‰, โ€˜NULLโ€™ ๊ฐ’์€ ํ•ฉ๊ณ„ ๊ณ„์‚ฐ์— ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • โ€˜SUMโ€™ ์€ ๋‹ค๋ฅธ ์ง‘๊ณ„ ํ•จ์ˆ˜(โ€˜COUNTโ€™, โ€˜AVGโ€™, โ€˜MINโ€™, โ€˜MAXโ€™ ๋“ฑ)์™€ ํ•จ๊ป˜ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋ณต์žกํ•œ ๋ฐ์ดํ„ฐ ์ง‘ํ•ฉ์— ๋Œ€ํ•œ ์š”์•ฝ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ ์‹œ ๊ณ ๋ ค์‚ฌํ•ญ

  • โ€˜SUMโ€™ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š” ๋Œ€์ƒ ์—ด์ด ์ˆซ์ž ํƒ€์ž…์ž„์„ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ํฐ ๋ฐ์ดํ„ฐ ์„ธํŠธ์—์„œ โ€˜SUMโ€™ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š” ์ฟผ๋ฆฌ ์„ฑ๋Šฅ์— ์ฃผ์˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
    • ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์ ์ ˆํ•œ ์ธ๋ฑ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ฑ๋Šฅ์„ ์ตœ์ ํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • โ€˜GROUP BYโ€™ ์ ˆ๊ณผ ํ•จ๊ป˜ โ€˜SUMโ€™ ์„ ์‚ฌ์šฉํ•  ๋•Œ๋Š”, ๊ทธ๋ฃนํ™”ํ•  ์—ด์„ ๋ช…ํ™•ํžˆ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

โ€˜SUMโ€™ ํ•จ์ˆ˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์ˆซ์ž ๋ฐ์ดํ„ฐ์˜ ํ•ฉ๊ณ„๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ๋ฐ ๋งค์šฐ ์ค‘์š”ํ•œ ๋„๊ตฌ๋กœ, ๋ฐ์ดํ„ฐ ๋ถ„์„ ๋ฐ ๋ณด๊ณ ์„œ ์ž‘์„ฑ ๋“ฑ ๋‹ค์–‘ํ•œ ์ƒํ™ฉ์—์„œ ํ™œ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

AVG

โ€˜AVGโ€™ ํ•จ์ˆ˜๋Š” SQL์—์„œ ํŠน์ • ์—ด(column)์— ํฌํ•จ๋œ ์ˆซ์ž ๊ฐ’๋“ค์˜ ํ‰๊ท ์„ ๊ณ„์‚ฐํ•  ๋•Œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

  • ์ด ์ง‘๊ณ„ ํ•จ์ˆ˜๋Š” ํŠน์ • ๋ฐ์ดํ„ฐ ์ง‘ํ•ฉ์˜ ์ค‘๊ฐ„ ๊ฐ’์„ ์ฐพ๊ฑฐ๋‚˜, ๋ฐ์ดํ„ฐ์˜ ์ผ๋ฐ˜์ ์ธ ๊ฒฝํ–ฅ์„ฑ์„ ํŒŒ์•…ํ•˜๋Š” ๋ฐ ์œ ์šฉํ•˜๋ฉฐ, ๋ฐ์ดํ„ฐ ๋ถ„์„, ๋ณด๊ณ ์„œ ์ž‘์„ฑ, ์„ฑ๋Šฅ ํ‰๊ฐ€ ๋“ฑ ๋‹ค์–‘ํ•œ ์ƒํ™ฉ์—์„œ ํ™œ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

โ€˜AVGโ€™ ์‚ฌ์šฉ ์˜ˆ

  • ์ „์ฒด ํ‰๊ท  ๊ณ„์‚ฐ : ๋ชจ๋“  ์ง์›์˜ ํ‰๊ท  ๊ธ‰์—ฌ๋ฅผ ๊ณ„์‚ฐํ•˜๊ณ  ์‹ถ์„ ๋•Œ
    SELECT AVG(salary) FROM employees;
    

    ์ด ์ฟผ๋ฆฌ๋Š” โ€˜employeesโ€™ ํ…Œ์ด๋ธ”์˜ โ€˜salaryโ€™ ์—ด์— ์žˆ๋Š” ๊ฐ’๋“ค์˜ ํ‰๊ท ์„ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.

  • ๊ทธ๋ฃน๋ณ„ ํ‰๊ท  ๊ณ„์‚ฐ : ๊ฐ ๋ถ€์„œ๋ณ„ ์ง์›๋“ค์˜ ํ‰๊ท  ๊ธ‰์—ฌ๋ฅผ ๊ณ„์‚ฐํ•˜๊ณ  ์‹ถ์„ ๋•Œ
    SELECT department, AVG(salary) FROM employees GROUP BY department;
    

    ์ด ์ฟผ๋ฆฌ๋Š” โ€˜employeesโ€™ ํ…Œ์ด๋ธ”์—์„œ ๊ฐ โ€˜departmentโ€™ ๋ณ„๋กœ โ€˜salaryโ€™ ์—ด์˜ ํ‰๊ท ์„ ๊ณ„์‚ฐํ•˜์—ฌ, ๊ฐ ๋ถ€์„œ์˜ ์ง์›๋“ค์— ๋Œ€ํ•œ ํ‰๊ท  ๊ธ‰์—ฌ๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

  • ์กฐ๊ฑด๋ถ€ ํ‰๊ท  ๊ณ„์‚ฐ : 2023๋…„์— ์ด๋ฃจ์–ด์ง„ ๋ชจ๋“  ํŒ๋งค ๊ฑด์— ๋Œ€ํ•œ ํ‰๊ท  ํŒ๋งค์•ก์„ ๊ณ„์‚ฐํ•˜๊ณ  ์‹ถ์„ ๋•Œ
    SELECT AVG(sales_amount) FROM sales WHERE year = 2023;
    

    ์ด ์ฟผ๋ฆฌ๋Š” โ€˜salseโ€™ ํ…Œ์ด๋ธ”์—์„œ โ€˜yearโ€™ ์—ด์ด 2023์ธ ๋ชจ๋“  ํ–‰์˜ โ€˜sales_amountโ€™ ์—ด ๊ฐ’๋“ค์˜ ํ‰๊ท ์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

โ€˜AVGโ€™ ํ•จ์ˆ˜์˜ ํŠน์ง•

  • โ€˜AVGโ€™ ํ•จ์ˆ˜๋Š” ์ˆซ์ž ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•ด์„œ๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌธ์ž์—ด์ด๋‚˜ ๋‚ ์งœ ๋“ฑ ๋‹ค๋ฅธ ํƒ€์ž…์˜ ๋ฐ์ดํ„ฐ์—๋Š” ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
  • โ€˜NULLโ€™ ๊ฐ’์„ ํฌํ•จํ•˜๋Š” ์—ด์— โ€˜AVGโ€™ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ, โ€˜NULLโ€™ ๊ฐ’์€ ๊ณ„์‚ฐ์—์„œ ์ œ์™ธ๋ฉ๋‹ˆ๋‹ค.
    • ์ฆ‰, โ€˜NULLโ€™ ๊ฐ’์€ ํ‰๊ท  ๊ณ„์‚ฐ์— ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š์œผ๋ฉฐ, ์‹ค์ œ ๊ฐ’์ด ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋งŒ์„ ๊ธฐ์ค€์œผ๋กœ ํ‰๊ท ์ด ๊ณ„์‚ฐ๋ฉ๋‹ˆ๋‹ค.
  • โ€˜AVGโ€™ ๋Š” ๋‹ค๋ฅธ ์ง‘๊ณ„ ํ•จ์ˆ˜(โ€˜SUMโ€™, โ€˜COUNTโ€™, โ€˜MINโ€™, โ€˜MAXโ€™ ๋“ฑ)์™€ ํ•จ๊ป˜ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋ฐ์ดํ„ฐ์˜ ํ†ต๊ณ„์  ๋ถ„์„์ด๋‚˜ ์š”์•ฝ ์ •๋ณด ์ œ๊ณต์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ ์‹œ ๊ณ ๋ ค์‚ฌํ•ญ

  • โ€˜AVGโ€™ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š” ๋Œ€์ƒ ์—ด์ด ์ˆซ์ž ํƒ€์ž…์ธ์ง€ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฐ์ดํ„ฐ ์„ธํŠธ์˜ ํฌ๊ธฐ๊ฐ€ ํด ๋•Œ โ€˜AVGโ€™ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ฟผ๋ฆฌ ์„ฑ๋Šฅ์— ์˜ํ–ฅ์„ ์ค„ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ, ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์ ์ ˆํ•œ ์ธ๋ฑ์Šค ์‚ฌ์šฉ๊ณผ ๋ฐ์ดํ„ฐ ํ•„ํ„ฐ๋ง์„ ํ†ตํ•ด ์„ฑ๋Šฅ์„ ์ตœ์ ํ™”ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • โ€˜GROUP BYโ€™ ์ ˆ๊ณผ ํ•จ๊ป˜ โ€˜AVGโ€™ ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š”, ๊ทธ๋ฃนํ™”ํ•  ์—ด์„ ๋ช…ํ™•ํ•˜๊ฒŒ ์ง€์ •ํ•ด์•ผ ํ•˜๋ฉฐ, ๊ทธ๋ฃน๋ณ„๋กœ ํ‰๊ท ๊ฐ’์„ ๊ณ„์‚ฐํ•˜๊ณ ์ž ํ•  ๋•Œ ํŠนํžˆ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

โ€˜AVGโ€™ ํ•จ์ˆ˜๋Š” ๋ฐ์ดํ„ฐ ์„ธํŠธ์—์„œ ํ‰๊ท ๊ฐ’์„ ๊ณ„์‚ฐํ•˜์—ฌ ์ค‘์š”ํ•œ ์ธ์‚ฌ์ดํŠธ๋ฅผ ์ œ๊ณตํ•˜๋Š” ์ง‘๊ณ„ ํ•จ์ˆ˜๋กœ, ๋ฐ์ดํ„ฐ ๋ถ„์„๊ณผ ์˜์‚ฌ ๊ฒฐ์ • ๊ณผ์ •์—์„œ ํ•ต์‹ฌ์ ์ธ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

COUNT

โ€˜COUNTโ€™ ํ•จ์ˆ˜๋Š” SQL์—์„œ ํ–‰(row)์˜ ์ˆ˜๋ฅผ ์„ธ๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

  • ์ด ํ•จ์ˆ˜๋Š” ํŠน์ • ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ํ–‰์˜ ์ˆ˜๋ฅผ ์ฐพ๊ฑฐ๋‚˜, ํ…Œ์ด๋ธ”์˜ ์ „์ฒด ํ–‰ ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•  ๋•Œ ๋งค์šฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ๋ถ„์„, ๋ณด๊ณ ์„œ ์ž‘์„ฑ, ๋ฐ์ดํ„ฐ ์ง‘ํ•ฉ์˜ ํฌ๊ธฐ๋ฅผ ํŒŒ์•…ํ•˜๋Š” ๋“ฑ์˜ ์ƒํ™ฉ์—์„œ ํ™œ์šฉ๋ฉ๋‹ˆ๋‹ค.
  • โ€˜COUNTโ€™ ๋Š” ๋‹ค์–‘ํ•œ ํ˜•ํƒœ๋กœ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•์€ โ€˜COUNT(*)โ€™, COUNT(์—ด ์ด๋ฆ„), ๊ทธ๋ฆฌ๊ณ  โ€˜COUNT(DISTINCT ์—ด ์ด๋ฆ„)โ€™ ์ž…๋‹ˆ๋‹ค.

โ€˜COUNTโ€™ ์‚ฌ์šฉ ์˜ˆ

  • ํ…Œ์ด๋ธ”์˜ ์ „์ฒด ํ–‰ ์ˆ˜ ๊ณ„์‚ฐ : โ€˜employeesโ€™ ํ…Œ์ด๋ธ”์˜ ์ „์ฒด ์ง์› ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•˜๊ณ  ์‹ถ์„ ๋•Œ
    SELECT COUNT(*) FROM employees;
    

    ์ด ์ฟผ๋ฆฌ๋Š” โ€˜employeesโ€™ ํ…Œ์ด๋ธ”์˜ ์ „์ฒด ํ–‰ ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

  • ํŠน์ • ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ํ–‰ ์ˆ˜ ๊ณ„์‚ฐ : ์—ฐ๋ด‰์ด $50,000 ์ด์ƒ์ธ ์ง์›์˜ ์ˆ˜๋ฅผ ์ฐพ๊ณ  ์‹ถ์„ ๋•Œ
    SELECT COUNT(*) FROM employees WHERE salary >= 50000;
    

    ์ด ์ฟผ๋ฆฌ๋Š” โ€˜salaryโ€™๊ฐ€ $50,000 ์ด์ƒ์ธ ํ–‰์˜ ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

  • ๊ณ ์œ ๊ฐ’์˜ ์ˆ˜ ๊ณ„์‚ฐ : โ€˜employeesโ€™ ํ…Œ์ด๋ธ”์—์„œ ๊ณ ์œ ํ•œ ๋ถ€์„œ์˜ ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•˜๊ณ  ์‹ถ์„ ๋•Œ
    SELECT COUNT(DISTINCT department) FROM employees;
    

    ์ด ์ฟผ๋ฆฌ๋Š” ์ค‘๋ณต์„ ์ œ๊ฑฐํ•œ โ€˜departmentโ€™ ์—ด์˜ ๊ณ ์œ ๊ฐ’ ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

โ€˜COUNTโ€™ ํ•จ์ˆ˜์˜ ํŠน์ง•.

  • โ€˜COUNT(*)โ€™ ๋Š” ํ…Œ์ด๋ธ”์˜ ์ „์ฒด ํ–‰ ์ˆ˜๋ฅผ ์„ธ๋ฉฐ, โ€˜NULLโ€™ ๊ฐ’์„ ํฌํ•จํ•œ ๋ชจ๋“  ํ–‰์„ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.
  • โ€˜COUNT(์—ด ์ด๋ฆ„)โ€™ ๋Š” ํŠน์ • ์—ด์—์„œ โ€˜NULLโ€™ ์ด ์•„๋‹Œ ํ–‰์˜ ์ˆ˜๋ฅผ ์„ธ๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
  • โ€˜COUNT(DISTINCT ์—ด ์ด๋ฆ„)โ€™ ๋Š” ํŠน์ • ์—ด์˜ ๊ณ ์œ ๊ฐ’ ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•  ๋•Œ ์‚ฌ์šฉ๋˜๋ฉฐ, ์ค‘๋ณต๋œ ๊ฐ’์€ ํ•˜๋‚˜๋กœ ์ทจ๊ธ‰ํ•ฉ๋‹ˆ๋‹ค.
  • โ€˜COUNTโ€™ ํ•จ์ˆ˜๋Š” ์ง‘๊ณ„ ํ•จ์ˆ˜๋กœ ๋ถ„๋ฅ˜๋˜๋ฉฐ, โ€˜GROUP BYโ€™ ์ ˆ๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜์—ฌ ํŠน์ • ์กฐ๊ฑด์— ๋”ฐ๋ฅธ ๊ทธ๋ฃน๋ณ„ ํ–‰ ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ ์‹œ ๊ณ ๋ ค์‚ฌํ•ญ

  • โ€˜COUNT(*)โ€™ ์™€ COUNT(์—ด ์ด๋ฆ„) ์‚ฌ์ด์—๋Š” ์„ฑ๋Šฅ ์ฐจ์ด๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ, ์‚ฌ์šฉ ์ƒํ™ฉ์— ๋”ฐ๋ผ ์ ์ ˆํ•œ ํ˜•ํƒœ๋ฅผ ์„ ํƒํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.
  • ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ โ€˜COUNTโ€™ ์ฟผ๋ฆฌ๋ฅผ ์‹คํ–‰ํ•  ๋•Œ๋Š” ์ฟผ๋ฆฌ ์„ฑ๋Šฅ์— ์ฃผ์˜ํ•ด์•ผ ํ•˜๋ฉฐ, ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์ ์ ˆํ•œ ์ธ๋ฑ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ์กฐ๊ฑด์„ ์ตœ์ ํ™”ํ•˜์—ฌ ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

โ€˜COUNTโ€™ ํ•จ์ˆ˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋‚ด ๋ฐ์ดํ„ฐ์˜ ์–‘์„ ์ธก์ •ํ•˜๊ณ  ๋ถ„์„ํ•˜๋Š” ๋ฐ ํ•„์ˆ˜์ ์ธ ๋„๊ตฌ๋กœ, ๋ฐ์ดํ„ฐ์˜ ํฌ๊ธฐ๋‚˜ ํŠน์ • ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๋ฐ์ดํ„ฐ์˜ ์ˆ˜๋ฅผ ํŒŒ์•…ํ•˜๋Š” ๋ฐ ๋งค์šฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

MIN

MIN ํ•จ์ˆ˜๋Š” SQL์—์„œ ํŠน์ • ์—ด(column)์˜ ์ตœ์†Œ๊ฐ’์„ ์ฐพ์„ ๋•Œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

  • ์ด ํ•จ์ˆ˜๋Š” ์ˆซ์ž, ๋ฌธ์ž์—ด, ๋‚ ์งœ ๋ฐ์ดํ„ฐ ํƒ€์ž… ๋“ฑ ๋‹ค์–‘ํ•œ ์ข…๋ฅ˜์˜ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•ด ์ž‘๋™ํ•˜๋ฉฐ, ํ…Œ์ด๋ธ” ์ „์ฒด ๋˜๋Š” ํŠน์ • ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๋ฐ์ดํ„ฐ ์ง‘ํ•ฉ ๋‚ด์—์„œ ๊ฐ€์žฅ ์ž‘์€ ๊ฐ’์„ ์ฐพ๋Š” ๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • โ€˜MINโ€™ ์€ ์ฃผ๋กœ ๋ฐ์ดํ„ฐ ๋ถ„์„, ๋ณด๊ณ ์„œ ์ž‘์„ฑ, ๋ฐ์ดํ„ฐ์˜ ๋ฒ”์œ„๋ฅผ ์ดํ•ดํ•˜๊ณ ์ž ํ•  ๋•Œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

โ€˜MINโ€™ ์‚ฌ์šฉ ์˜ˆ

  • ์ˆซ์ž ๋ฐ์ดํ„ฐ์˜ ์ตœ์†Œ๊ฐ’ ์ฐพ๊ธฐ : ์ง์›๋“ค์˜ ์ตœ์†Œ ๊ธ‰์—ฌ๋ฅผ ์ฐพ๊ณ  ์‹ถ์„ ๋•Œ
    SELECT MIN(salary) FROM employees;
    

    ์ด ์ฟผ๋ฆฌ๋Š” โ€˜employeesโ€™ ํ…Œ์ด๋ธ”์˜ โ€˜salaryโ€™ ์—ด์—์„œ ๊ฐ€์žฅ ๋‚ฎ์€ ๊ธ‰์—ฌ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

  • ๋‚ ์งœ ๋ฐ์ดํ„ฐ์˜ ์ตœ์†Œ๊ฐ’ ์ฐพ๊ธฐ : ๊ฐ€์žฅ ์˜ค๋ž˜๋œ ์ฃผ๋ฌธ์˜ ๋‚ ์งœ๋ฅผ ์ฐพ๊ณ  ์‹ถ์„ ๋•Œ
    SELECT MIN(order_date) FROM orders;
    

    ์ด ์ฟผ๋ฆฌ๋Š” โ€˜ordersโ€™ ํ…Œ์ด๋ธ”์˜ โ€˜order_dateโ€™ ์—ด์—์„œ ๊ฐ€์žฅ ์ด๋ฅธ ๋‚ ์งœ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

  • ๋ฌธ์ž์—ด ๋ฐ์ดํ„ฐ์˜ ์ตœ์†Œ๊ฐ’ ์ฐพ๊ธฐ : ์•ŒํŒŒ๋ฒณ ์ˆœ์œผ๋กœ ๊ฐ€์žฅ ๋จผ์ € ์˜ค๋Š” ์ œํ’ˆ ์ด๋ฆ„์„ ์ฐพ๊ณ  ์‹ถ์„ ๋•Œ
    SELECT MIN(product_name) FROM products;
    

    ์ด ์ฟผ๋ฆฌ๋Š” โ€˜productsโ€™ ํ…Œ์ด๋ธ”์˜ โ€˜product_nameโ€™ ์—ด์—์„œ ์•ŒํŒŒ๋ฒณ ์ˆœ์œผ๋กœ ๊ฐ€์žฅ ์•ž์„œ๋Š” ์ด๋ฆ„์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๋ฌธ์ž์—ด ๋ฐ์ดํ„ฐ์˜ ๊ฒฝ์šฐ, โ€˜์ตœ์†Œ๊ฐ’โ€™์€ ์•ŒํŒŒ๋ฒณ ์ˆœ ๋˜๋Š” ์„ค์ •๋œ ์ •๋ ฌ ์ˆœ์„œ์— ๋”ฐ๋ผ ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค.

โ€˜MINโ€™ ํ•จ์ˆ˜์˜ ํŠน์ง•

  • โ€˜MINโ€™ ํ•จ์ˆ˜๋Š” ์ง‘๊ณ„ ํ•จ์ˆ˜์˜ ํ•˜๋‚˜๋กœ, ๋‹จ์ผ ์—ด์—์„œ ๊ฐ€์žฅ ์ž‘์€ ๊ฐ’์„ ์ฐพ๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
  • ์ˆซ์ž, ๋ฌธ์ž์—ด, ๋‚ ์งœ ๋“ฑ ๋‹ค์–‘ํ•œ ํƒ€์ž…์˜ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•ด ์ตœ์†Œ๊ฐ’์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • โ€˜GROUP BYโ€™ ์ ˆ๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋ฉด, ํŠน์ • ๊ธฐ์ค€(์˜ˆ: ๋ถ€์„œ๋ณ„, ์นดํ…Œ๊ณ ๋ฆฌ๋ณ„)์œผ๋กœ ๊ทธ๋ฃนํ™”๋œ ๋ฐ์ดํ„ฐ ๋‚ด์—์„œ ๊ฐ ๊ทธ๋ฃน์˜ ์ตœ์†Œ๊ฐ’์„ ์ฐพ๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ ์‹œ ๊ณ ๋ ค์‚ฌํ•ญ

  • โ€˜MINโ€™ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š” ๋ฐ์ดํ„ฐ ํƒ€์ž…๊ณผ ํ•ด๋‹น ํ•„๋“œ์˜ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋ฅผ ์ดํ•ดํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.
    • ํŠนํžˆ, ๋ฌธ์ž์—ด ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ โ€˜MINโ€™ ์˜ ์‚ฌ์šฉ์€ ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์ฃผ์˜๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
  • ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ์…‹์—์„œ โ€˜MINโ€™ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š” ์ฟผ๋ฆฌ์˜ ์„ฑ๋Šฅ์— ์ฃผ์˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
    • ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์ ์ ˆํ•œ ์ธ๋ฑ์Šค ์‚ฌ์šฉ๊ณผ ๋ฐ์ดํ„ฐ ํ•„ํ„ฐ๋ง์„ ํ†ตํ•ด ์„ฑ๋Šฅ์„ ์ตœ์ ํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

โ€˜MINโ€™ ํ•จ์ˆ˜๋Š” ๋ฐ์ดํ„ฐ ์„ธํŠธ์—์„œ ์ตœ์†Œ๊ฐ’์„ ์‹๋ณ„ํ•  ๋•Œ ํ•„์ˆ˜์ ์ธ ๋„๊ตฌ๋กœ, ๋ฐ์ดํ„ฐ์˜ ๋ฒ”์œ„๋ฅผ ํŒŒ์•…ํ•˜๊ณ  ํŠน์ • ์กฐ๊ฑด์— ๋”ฐ๋ฅธ ์ตœ์†Œ๊ฐ’์„ ๋ถ„์„ํ•˜๋Š” ๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

MAX

โ€˜MAXโ€™ ํ•จ์ˆ˜๋Š” SQL์—์„œ ํŠน์ • ์—ด(column)์˜ ์ตœ๋Œ€๊ฐ’์„ ์ฐพ์„ ๋•Œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

  • ์ˆซ์ž, ๋ฌธ์ž์—ด, ๋‚ ์งœ ๋“ฑ ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ ํƒ€์ž…์— ์ ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํ…Œ์ด๋ธ” ์ „์ฒด ๋˜๋Š” ํŠน์ • ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๋ฐ์ดํ„ฐ ์ง‘ํ•ฉ ๋‚ด์—์„œ ๊ฐ€์žฅ ํฐ ๊ฐ’์„ ์ฐพ๋Š” ๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • โ€˜MAXโ€™ ๋Š” ๋ฐ์ดํ„ฐ์˜ ์ƒํ•œ์„ ํŒŒ์•…ํ•˜๊ฑฐ๋‚˜, ๊ฐ€์žฅ ์ตœ์‹  ๋˜๋Š” ๊ฐ€์žฅ ์˜ค๋ž˜๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๋“ฑ์˜ ์ƒํ™ฉ์—์„œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

โ€˜MAXโ€™ ์‚ฌ์šฉ ์˜ˆ

  • ์ˆซ์ž ๋ฐ์ดํ„ฐ์˜ ์ตœ๋Œ€๊ฐ’ ์ฐพ๊ธฐ : ์ง์›๋“ค์˜ ์ตœ๋Œ€ ๊ธ‰์—ฌ๋ฅผ ์ฐพ๊ณ  ์‹ถ์„ ๋•Œ
    SELECT MAX(salary) FROM employees;
    

    ์ด ์ฟผ๋ฆฌ๋Š” โ€˜employeesโ€™ ํ…Œ์ด๋ธ”์˜ โ€˜salaryโ€™ ์—ด์—์„œ ๊ฐ€์žฅ ๋†’์€ ๊ธ‰์—ฌ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

  • ๋‚ ์งœ ๋ฐ์ดํ„ฐ์˜ ์ตœ๋Œ€๊ฐ’ ์ฐพ๊ธฐ : ๊ฐ€์žฅ ์ตœ๊ทผ ์ฃผ๋ฌธ์˜ ๋‚ ์งœ๋ฅผ ์ฐพ๊ณ  ์‹ถ์„ ๋•Œ
    SELECT MAX(order_date) FROM orders;
    

    ์ด ์ฟผ๋ฆฌ๋Š” โ€˜ordersโ€™ ํ…Œ์ด๋ธ”์˜ โ€˜order_dateโ€™ ์—ด์—์„œ ๊ฐ€์žฅ ์ตœ๊ทผ์˜ ๋‚ ์งœ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

  • ๋ฌธ์ž์—ด ๋ฐ์ดํ„ฐ์˜ ์ตœ๋Œ€๊ฐ’ ์ฐพ๊ธฐ : ์•ŒํŒŒ๋ฒณ ์ˆœ์œผ๋กœ ๊ฐ€์žฅ ๋งˆ์ง€๋ง‰์— ์˜ค๋Š” ์ œํ’ˆ ์ด๋ฆ„์„ ์ฐพ๊ณ  ์‹ถ์„ ๋•Œ
    SELECT MAX(product_name) FROM products;
    

    ์ด ์ฟผ๋ฆฌ๋Š” โ€˜productsโ€™ ํ…Œ์ด๋ธ”์˜ โ€˜product_nameโ€™ ์—ด์—์„œ ์•ŒํŒŒ๋ฒณ ์ˆœ์œผ๋กœ ๊ฐ€์žฅ ๋’ค์— ์˜ค๋Š” ์ด๋ฆ„์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
    ๋ฌธ์ž์—ด ๋ฐ์ดํ„ฐ์˜ ๊ฒฝ์šฐ, โ€˜์ตœ๋Œ€๊ฐ’โ€™์€ ์•ŒํŒŒ๋ฒณ ์ˆœ ๋˜๋Š” ์„ค์ •๋œ ์ •๋ ฌ ์ˆœ์„œ์— ๋”ฐ๋ผ ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค.

โ€˜MAXโ€™ ํ•จ์ˆ˜์˜ ํŠน์ง•

  • โ€˜MAXโ€™ ํ•จ์ˆ˜๋Š” ์ง‘๊ณ„ ํ•จ์ˆ˜์˜ ํ•˜๋‚˜๋กœ, ๋‹จ์ผ ์—ด์—์„œ ๊ฐ€์žฅ ํฐ ๊ฐ’์„ ์ฐพ๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
  • ์ˆซ์ž, ๋ฌธ์ž์—ด, ๋‚ ์งœ ๋“ฑ ๋‹ค์–‘ํ•œ ํƒ€์ž…์˜ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•ด ์ตœ๋Œ€๊ฐ’์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • โ€˜GROUP BYโ€™ ์ ˆ๊ณผ ํ•จ๊ผ ์‚ฌ์šฉํ•˜๋ฉด, ํŠน์ • ๊ธฐ์ค€(์˜ˆ: ๋ถ€์„œ๋ณ„, ์นดํ…Œ๊ณ ๋ฆฌ๋ณ„)์œผ๋กœ ๊ทธ๋ฃนํ™”๋œ ๋ฐ์ดํ„ฐ ๋‚ด์—์„œ ๊ฐ ๊ทธ๋ฃน์˜ ์ตœ๋Œ€๊ฐ’์„ ์ฐพ๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ ์‹œ ๊ณ ๋ ค์‚ฌํ•ญ

  • โ€˜MAXโ€™ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š” ๋ฐ์ดํ„ฐ ํƒ€์ž…๊ณผ ํ•ด๋‹น ํ•„๋“œ์˜ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋ฅผ ์ดํ•ดํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ํŠนํžˆ, ๋ฌธ์ž์—ด ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ โ€˜MAXโ€™ ์˜ ์‚ฌ์šฉ์€ ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์ฃผ์˜๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
  • ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ์…‹์—์„œ โ€˜MAXโ€™ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š” ์ฟผ๋ฆฌ์˜ ์„ฑ๋Šฅ์— ์ฃผ์˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์ ์ ˆํ•œ ์ธ๋ฑ์Šค ์‚ฌ์šฉ๊ณผ ๋ฐ์ดํ„ฐ ํ•„ํ„ฐ๋ง์„ ํ†ตํ•ด ์„ฑ๋Šฅ์„ ์ตœ์ ํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

โ€˜MAXโ€™ ํ•จ์ˆ˜๋Š” ๋ฐ์ดํ„ฐ ์„ธํŠธ์—์„œ ์ตœ๋Œ€๊ฐ’์„ ์‹๋ณ„ํ•  ๋•Œ ํ•„์ˆ˜์ ์ธ ๋„๊ตฌ๋กœ, ๋ฐ์ดํ„ฐ์˜ ๋ฒ”์œ„๋ฅผ ํŒŒ์•…ํ•˜๊ณ  ํŠน์ • ์กฐ๊ฑด์— ๋”ฐ๋ฅธ ์ตœ๋Œ€๊ฐ’์„ ๋ถ„์„ํ•˜๋Š” ๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.