티스토리 뷰
# Group by: 동일한 범주의 데이터를 묶어준다.
# Order by: 깔끔하게 데이터를 정렬한다.
select * from users
group by name
# 위에서부터 한 번에 쓴다는 생각 말고 위처럼 미리 작성 후 아래와 같이 작성하는 순서로 배우자.
select name, count(*) from users
group by name
# users 테이블 전체 불러오기
select * from users
# users 테이블에서 '신'씨를 가진 데이터만 불러와서 개수 살펴보기
select count(*) from users
where name like '신**'
# group by를 사용해서 '신'씨를 가진 데이터가 몇 개인지 살펴보기
select name, count(*) from users
group by name
# Quiz) naver 이메일을 쓰는 사람들 중에서 성씨별로 몇 명씩 있는지 보고 싶다.(where 사용)
select name, count(*) from users
where email like '%@naver.com'
group by name
# 주차별 '오늘의 다짐' 개수 구하기
select week, count(*) from checkins
group by week
# 주차별 '오늘의 다짐'의 좋아요 최솟값/최댓값 구하기, min(필드명), max(필드명)
select week, min(likes) from checkins
group by week
select week, max(likes) from checkins
group by week
# 좋아요 평균값, avg()
select week, avg(likes) from checkins
group by week
# 반올림 round( , 소숫점 자릿수)
select week, round(avg(likes), 2) from checkins
group by week
# 합계, sum()
select week, sum(likes) from checkins
group by week
## order by, 정렬은 맨 마지막에!!!
# 기본적으로 오름차순(asc), 내림차순(desc)
# 쿼리가 실행되는 순서: from -> group by -> select -> order by
select name, count(*) from users
group by name
order by count(*) desc
# 웹개발 종합반의 결제수단별 주문건수 세어보기
select payment_method, count(*) from orders
where course_title = '웹개발 종합반'
group by payment_method
order by count(*) desc
REVIEW
짧게 짧게 진행되는 강의 속에 지식이 한층 한층 쌓여가는 기분이 좋다.
이 분야로의 취업까지 얼마가 걸릴지는 모르겠지만, 되는 데까지 나태해지지 말고 달려가는 내가 되도록 노력하자.
'[학습일지] > SQL' 카테고리의 다른 글
[학습일지] SQL 3-5 ~ 3-7 (Left Join, Union All 사용하기) (0) | 2022.07.20 |
---|---|
[학습일지] SQL 3-1 ~ 3-4 (join(left, inner) 사용하기) (0) | 2022.07.19 |
[학습일지] SQL 2-1 ~ 2-7 (alias 별칭 사용하기) (0) | 2022.07.01 |
[학습일지] SQL 1-1 ~ 1-7(기본적인 쿼리문 실행) (0) | 2022.06.27 |