SQL 2주차

김은지·2023년 1월 14일
1

[ 2주차 강의 개발일지 시작 ^_^ ]

데이터 분석 목적 : 쌓여있는 날것의 데이터를 의미있는 정보로 변환.

Group by, Order by

Group by : 동일한 범주의 데이터를 묶어 통계를 낼 때 사용. ~별이 묶이는 대상
Order by : 출력하는 데이터를 필드값으로 정렬할 때 사용

통계 - 최대, 최소, 평균, 개수

개수 : count(*)
최솟값 : min(필드명)
최댓값 : max(필드명)
평균 : avg(필드명)
합계 : sum(필드명)

쿼리가 실행되는 순서 : from → where → group by → select → order by

ex.성씨별 회원수
select name, count(*) from users
group by name


( count(*)는 group by 로 합쳐진 데이터의 개수를 세어줌.)

오름차순 정렬
select name, count() from checkins
group by name
order by count(
)

내림차순 정렬
select name, count() from checkins
group by name
order by count(
) desc

ex. 주차별 '오늘의 다짐'의 좋아요 최댓값
select week, max(likes) from checkins
group by week

ex. 주차별 '오늘의 다짐'의 좋아요 합계
select week, sum(likes) from checkins
group by week

ex. 웹개발 종합반의 결제수단별 주문건수 세어보기
select payment_method, count(*) from orders
where course_title = '웹개발 종합반'
group by payment_method

ex. Gmail을 사용하는 성씨별 회원수 세어보기
select name, count(*) from users
where email like '%gmail.com'
group by name

이외 유용한 문법 : 별칭 기능(Alias)
select * from orders o
where o.course_title = '앱개발 종합반'

select payment_method, count(*) as cnt from orders o
where o.course_title = '앱개발 종합반'
group by payment_method

① 어느 테이블의 필드인지 알려주기 위해 별칭 사용
② 테이블명 뒤에 as 붙여서 별칭 추가하고 실행하면
출력될 필드에 별칭 붙이는 것이 가능

끝 ! :-)

profile
데이터분석, SQL

0개의 댓글