예시 문)
INSERT INTO books (title, author_fname, author_lname, released_year, stock_quantity, pages)
VALUES
('The Namesake', 'Jhumpa', 'Lahiri', 2003, 32, 291),
('Norse Mythology', 'Neil', 'Gaiman',2016, 43, 304),
('American Gods', 'Neil', 'Gaiman', 2001, 12, 465),
('Interpreter of Maladies', 'Jhumpa', 'Lahiri', 1996, 97, 198),
('A Hologram for the King: A Novel', 'Dave', 'Eggers', 2012, 154, 352),
('The Circle', 'Dave', 'Eggers', 2013, 26, 504),
('The Amazing Adventures of Kavalier & Clay', 'Michael', 'Chabon', 2000, 68, 634),
('Just Kids', 'Patti', 'Smith', 2010, 55, 304),
('A Heartbreaking Work of Staggering Genius', 'Dave', 'Eggers', 2001, 104, 437),
('Coraline', 'Neil', 'Gaiman', 2003, 100, 208),
('What We Talk About When We Talk About Love: Stories', 'Raymond', 'Carver', 1981, 23, 176),
("Where I'm Calling From: Selected Stories", 'Raymond', 'Carver', 1989, 12, 526),
('White Noise', 'Don', 'DeLillo', 1985, 49, 320),
('Cannery Row', 'John', 'Steinbeck', 1945, 95, 181),
('Oblivion: Stories', 'David', 'Foster Wallace', 2004, 172, 329),
('Consider the Lobster', 'David', 'Foster Wallace', 2005, 92, 343),
('10% Happier', 'Dan', 'Harris', 2014, 29, 256),
('fake_book', 'Freida', 'Harris', 2001, 287, 428),
('Lincoln In the Bardo', 'George', 'Saunders', 2017, 156, 375);
컬럼안에 있는 데이터들을 그룹화 하여 데이터를 처리하는 group by의 예시문입니다.
author_lname 별로 몇권의 책을 냈는지 author_lname과 책의 개수로 조회를 한다고 할때
select author_lname,count(*)
from books
group by author_lname;
count는 ()안에 해당 데이터가 총 몇개인지 세어줍니다.
다른 예시입니다.
연도별로 몇권의 책이 발간되었는지 In 출간연도 권수 books released 로 출력한다고 했을때는
select concat_ws(' ','In',released_year,count(*), 'books released')
as year
from books
group by released_year -- group by로 그룹화를 먼저 하고
order by released_year; -- order by로 정렬을 마지막에 해야합니다.
'MySQL' 카테고리의 다른 글
MySQL의 sub query 작성하기 where절 안에 또 다른 SQL (0) | 2021.12.08 |
---|---|
MySQL 의 최대값 max() 최소값 min() (0) | 2021.12.08 |
MySQL의 검색기능 like 사용 (0) | 2021.12.08 |
MySQL의 데이터를 나눠서 가져오는 방법 limit (0) | 2021.12.08 |
MySQL의 오름차순(asc), 내림차순(desc) 정렬하기(order by) (0) | 2021.12.08 |