HN넴
혀나 Storyteler
HN넴
전체 방문자
오늘
어제
  • ALL CONTENT (63)
    • 100일 회고 CHALLANGE (17)
    • STUDY (15)
      • Daily Thinking (5)
      • MARKETING (7)
      • SQL, 데이터베이스 (3)
      • ENGLISH (0)
    • 책갈피 (12)
    • 경제 공부 (18)
      • 신문 스크랩 (18)
      • 경제,경영 책갈피 (0)
    • Hiri PORTFOLIO (1)

블로그 메뉴

  • 홈
  • 일상 블로그 (네이버)
  • 방명록
  • 태그

공지사항

인기 글

태그

  • 스파르타코딩클럽
  • 부동산
  • SQL개발일지
  • 마케팅교육
  • 반도체
  • 마케팅
  • 인턴
  • 콘텐츠마케터교육
  • 신문스크랩
  • 매일경제
  • 한미정상회담
  • 콘텐츠마케터
  • 마케팅공부
  • 금리
  • 카드뉴스
  • 인플레이션
  • 콘텐타뉴스레터
  • 경제신문스크랩
  • 개발일지
  • 서평
  • 회고
  • 금리인상
  • 코딩강좌
  • 마케팅업무
  • SQL
  • 북리뷰
  • 물가상승
  • sql공부
  • 원화
  • MZ세대

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
HN넴

혀나 Storyteler

SQL 02 : Group by, Order by & 통계 / 스파르타 코딩클럽
STUDY/SQL, 데이터베이스

SQL 02 : Group by, Order by & 통계 / 스파르타 코딩클럽

2022. 5. 17. 15:27

지난주 수업에서는 SQL의 기초적인 요소들 중 'R (Read)'를 중점적으로 배우는 목표의 수업이라는 설명을 들었고,
쿼리문을 작성하고 대충 필드, 테이블을 이용해서 Select, Where절을 꾸준히 연습해보곤 했다.

역시 반복적으로 직접 쳐보는 게 중요하다.


SQL 2주차 강의 #스파르타_코딩클럽

01. 2주차에서 배운 것 요약

  • 전반적인 통계 : 최대 / 최소 / 평균 / 개수, 더욱 의미있는 '정보' 통계적인 숫자들을 결과로 나오게 하는 것
  • 그래서 '범주 (category)' 각각의 정보가 궁금 할 수 있으며, 이 범주들을 묶어야 통계를 낼 수 있다.
  • Group by : 동일한 범주를 갖는 데이터를 묶어서 통계를 내준다. 1) 같은 성씨 데이터를 하나로 묶고 2) 각 성씨의 회원수를 구할 수 있다. (개수 count, 최솟값 min, 최댓값 max, 평균 avg, 합계 sum)
  • Order by : 출력하는 데이터를 필드의 값으로 정렬하여 출력, 보기 쉽게 데이터를 정리해보자! (마지막에 오름차순, 내림차순)
  • 별칭기능 : (Alias)

 

02. Group by

1) 간단한 쿼리

2) count 추가

 

02 - 1. 범주의 통계를 내주는 Group by

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

1) from users : users 테이블 전체를 가져온다.
2) group by name : users 테이블 데이터에서 같은 name을 갖는 데이터를 합쳐준다.
3) select name, count(*) : name에 따라 합쳐진 데이터가 각각 몇 개가 합쳐진 것인지 세어준다.

02 - 2. Group by 사용해보기

: 사용할 테이블 알아보기 > 테이블 구조 살펴보기 (필드 ex. week, likes) > 동일한 범주 개수 구하기 count(*)


1) 주차별 '오늘의 다짐'의 좋아요 최솟값 구하기

갯수 세어보기

최솟값 구한 결과값

최솟값 min 구하기

+ 응용 (최댓값 max, 평균값 avg, 합계 sum)

최댓값 max 구하기
평균값 avg 구하기

  • round ( avg (~), 소수점 자리)

round로 다시 한번 감싸서 소수점 간략화
정수만 구할 때, 소수점X
동일한 범주 합계 sum 구하기

  • 범주가 담긴 필드명은 week
  • 합계를 알고 싶은 필드명은 likes

 

03. Order by로 앞의 결과 정렬하기

  • 오름차순 (기본) asc
  • 내림차순 desc
  • Order by는 모든 SQL 쿼리에 적용될 수 있다.
  • 문자, 시간도 정렬이 가능하다.

<규칙 예시>
select * from checkins
order by likes desc ;


1) 성씨별 회원수 데이터 정렬하기

 

2) Order by는 모든 SQL 쿼리에 적용될 수 있다.

마지막에 order by로 정렬

3) 문자, 시간도 정렬이 가능하다.

이름 내림차순
생성일(시간) 내림차순

 

04. Where와 Group by, Order by 함께 사용해보기

  • 웹개발 종합반의 결제수단별 주문건수 세어보기
더보기

1. orders 테이블에서 주문 데이터를 읽어오고

2. 웹개발 종합반 데이터만 남기고

3. 결제수단(범주) 별로 그룹화하고

4. 결제수단별 주문건수를 세어준다!

 

05. 퀴즈

1) 퀴즈 : 앱개발 종합반의 결제수단별 주문건수 세어보기

더보기

(1) 원하는 테이블: orders

(2) 범주로 사용할 필드: payment_method

2) 퀴즈 : Gmail 을 사용하는 성씨별 회원수 세어보기

더보기

select name, count(*) from users

where email like '%gmail.com'

group by name ;

3) 퀴즈 : course_id별 '오늘의 다짐'에 달린 평균 like 개수 구해보기

더보기

select course_id, avg(likes) from checkins

group by course_id ;

 

06. 이외 유용한 문법 : 별칭 기능 (Alias)

 

07. 숙제로 마무리

: 네이버 이메일을 사용하여 앱개발 종합반을 신청한 주문의 결제수단별 주문건수 세어보기

 


데이터분석 종합반은 뭔가 초반부터 어려운 느낌이고, SQL은 아직까진 괜찮은 거 같다.
데이터분석 쪽을 좀 더 복습하고 틈틈히 강의를 들어야 겠다.
SQL은 파이썬 보다는 덜한 느낌! 생각보다 재미가 있다.

'STUDY > SQL, 데이터베이스' 카테고리의 다른 글

SQL 03 : Join / Union 배우기, 스파르타 코딩클럽  (0) 2022.06.11
이 시대를 살아가며 데이터를 분석하고 활용한다는 것은 / SQL 01 : 스파르타 코딩클럽  (0) 2022.05.10
    'STUDY/SQL, 데이터베이스' 카테고리의 다른 글
    • SQL 03 : Join / Union 배우기, 스파르타 코딩클럽
    • 이 시대를 살아가며 데이터를 분석하고 활용한다는 것은 / SQL 01 : 스파르타 코딩클럽
    HN넴
    HN넴
    Every human being craves a story. I like to listen to stories, watch them, and talk again.

    티스토리툴바