πŸ›’οΈDB/MySQL

[DB] λ°μ΄ν„°λ² μ΄μŠ€ MySQL - COUNT(), SUM(), AVG(), MAX(), MIN() ν•¨μˆ˜ μ‚¬μš©λ²•

루리야ㅑ 2023. 11. 30. 11:27
λ°˜μ‘ν˜•

MySQLμ—μ„œ μ œκ³΅ν•˜λŠ” 집계 ν•¨μˆ˜λ“€μΈ COUNT(), SUM(), AVG(), MAX(), MIN()은 λ°μ΄ν„°μ˜ 집합을 λΆ„μ„ν•˜κ±°λ‚˜ μš”μ•½ν•˜λŠ” 데에 μ‚¬μš©λœλ‹€.

 

μ‚¬μš©ν•  ν…Œμ΄λΈ”(books)

 

COUNT()

λ°μ΄ν„°μ˜ κ°―수λ₯Ό μ„ΈλŠ” ν•¨μˆ˜

books ν…Œμ΄λΈ”μ˜ μ „체 λ°μ΄ν„°λŠ” λͺ‡κ°œ?

select count(*)
from books;

author_lname μ€ μ€‘볡데이터가 μžˆλ‹€.
λ”°λΌμ„œ, 쀑볡데이터 μ œκ±°ν•œ μœ λ‹ˆν¬ν•œ λ°μ΄ν„°μ˜ κ°―μˆ˜λŠ” λͺ‡κ°œ?

select count(distinct author_lname)
from books;

μ±… μ œλͺ©μ— the κ°€ λ“€μ–΄μžˆλŠ” μ±…은, λͺ‡ κΆŒμž…λ‹ˆκΉŒ?

select count(*)
from books
where title like '%the%';

 

SUM()

값을 λ”ν•΄μ£ΌλŠ” ν•¨μˆ˜

books ν…Œμ΄λΈ”μ˜ λͺ¨λ“  μ±…μ˜ νŽ˜μ΄μ§€μˆ˜λ₯Ό λ‹€ λ” ν•˜λ©΄?

select sum(pages)
from books;

AVG()

평균 κ΅¬ν•˜λŠ” ν•¨μˆ˜ 

books ν…Œμ΄λΈ”μ˜ νŽ˜μ΄μ§€ μˆ˜ ν‰κ· ?

select avg(pages)
from books;

MAX()

μ΅œλŒ€κ°’ κ΅¬ν•˜λŠ” ν•¨μˆ˜.

νŽ˜μ΄μ§€μˆ˜κ°€ κ°€μž₯ λ§Žμ€ μ±…은, λͺ‡ νŽ˜μ΄μ§€κ°€ μž…λ‹ˆκΉŒ?

select *
from books
order by pages desc
limit 0, 1; 
-- μ •λ ¬ν•΄μ„œ μœ„μ— λ°μ΄ν„°λ§Œ κ°€μ Έμ˜€λŠ” 방법(limit ν‚€μ›Œλ“œ ν•¨κ»˜ μ‚¬μš©)

ν•¨μˆ˜ μ¨μ„œ λ°μ΄ν„° κ°€μ Έμ˜€λŠ” λ°©λ²•

select max(pages)
from books;

 

MIN()

μ΅œμ†Œκ°’ κ΅¬ν•˜λŠ” ν•¨μˆ˜.

μΆœνŒλ…„λ„κ°€ κ°€μž₯ λΉ λ₯Έ μ±…은 λͺ‡λ…„도 μΈκ°€?

select min(released_year)
from books;

νŽ˜μ΄μ§€μ˜ μ΅œμ†Œκ°’κ³Ό μ΅œλŒ€κ°’을 ν•¨κ»˜ λ³΄μ—¬μ£Όμ‹œμ˜€.

select min(pages) as pages_min,max(pages) as pages_max
from books;

이 ν•¨μˆ˜λ“€μ„ μ‚¬μš©ν•˜μ—¬ λ°μ΄ν„°λ² μ΄μŠ€μ˜ μš”μ•½ 정보λ₯Ό λΉ λ₯΄κ²Œ 얻을 수 있으며, λ°μ΄ν„°μ˜ νŠΉμ§•μ„ νŒŒμ•…ν•˜κ±°λ‚˜ μš”μ•½λœ 정보λ₯Ό μ œκ³΅ν•˜λŠ” 데 μœ μš©ν•˜κ²Œ ν™œμš©λœλ‹€.

λ°˜μ‘ν˜•