📝MySQL Workbench 데이터 집계함수
갯수를 세는 함수 count()
값을 모두 더해주는 함수 sum()
평균을 구하는 함수 avg()
최대값을 구하는 함수 max()
최소값을 구하는 함수 min()
갯수를 세는 함수 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;
-- 각 작가별로 자신이 쓴 책의 페이지수를 모두 더해서 작가이름과 페이지수의 합을 가져오기
select concat(author_lname, ' ', author_fname) as full_name, sum(pages)
from books
group by author_lname, author_fname ;
평균을 구하는 함수 avg()
-- books 테이블의 페이지수 평균을 구하기
select avg(pages)
from books ;
-- 년도와 재고평균만 나오도록 년도별로 재고의 평균을 구하기
select avg(stock_quantity), released_year
from books
group by released_year ;
최대값을 구하는 함수 max(), 최소값을 구하는 함수 min()
-- 페이지 최대값 찾기
select max(pages)
from books ;
-- 페이지수의 최대값과 최소값을 가져오기
select max(pages), min(pages)
from books ;
-- 페이지수가 가장 긴 책의 제목은?
-- 잘못된 SQL
select title, max(pages)
from books ;
-- max값 구해서 sub query 하기
select *
from books
where pages = (select max(pages) from books);
-- 재고가 가장 적은 책의 책이름과 작가의 fname, lname를 가져오기
select title, author_fname, author_lname
from books
where stock_quantity = (select min(stock_quantity) from books);
'MySQL' 카테고리의 다른 글
[MySQL] 서브쿼리 Sub Query 사용하기 (0) | 2022.12.07 |
---|---|
[MySQL] 데이터 그룹하여 처리하기 group by (0) | 2022.12.07 |
[MySQL] 데이터를 가공하는 키워드 distinct, order by, limit, like (0) | 2022.12.07 |
[MySQL] 문자열 컬럼의 데이터를 가공하는 함수들 concat(), substring(), replace(), reverse(), char_length(), upper(), lower() (0) | 2022.12.06 |
[MySQL] 테이블 데이터 CRUD(Create, Read, Update, Delete) (0) | 2022.12.06 |
댓글