[스파르타 코딩] 엑셀보다 쉬운 SQL 2주차
해당 강의에서는 "group by"와 "order by"에 대하여 배웠습니다.
우선 해당 기능들을 잘 쓰기 위해서는 하기 절차를 지키는 것이 가장 중요합니다.
[기본 쿼리 작성법] 1. Show tables 입력 : 어떤 테이블이 있는지 확인 2. Select * from 테이블명 : 해당 테이블에 어떤 데이터가 있는지 확인 3. 만약 원하는 데이터가 없다면 다른 테이블명을 입력하여 확인 4. Select [범주명] from [테이블명] 원하는 데이터 범주명을 확인하여 테이블 내에서 확인 5. SQL 쿼리 작성하기 |
이 중 5. SQL 쿼리 작성하기 중 group by와 order by를 배웠습니다.
Q1. 앱개발 종합반의 결제수단별 주문건수 세어보기
select payment_method, count(*) from orders
where course_title = '앱개발 종합반'
group by payment_method
Select payment_method[범주명], count(*) from orders[테이블명]
group by payment_method[범주명]
orders라는 테이블에서 payment_method 범주를 확인하여, payment_method 별 횟수를 확인하라!
근데 "앱개발 종합반"만 확인하고자 한다면?
where course_title[범주명] = '앱개발 종합반'을 삽입!
Q2. Gmail을 사용하는 성씨별 회원수 세어보기
select name, count(*) from users
where email like '%gamil.com'
group by name
group by name
이제는 더 쉽게 이해하시겠죠?
select name[필드명], count(*) from users[테이블명]
where email[필드명] like '%gamil.com'
group by name[필드명]
Select [필드명] count(*) from [테이블명]
group by [필드명]
해당 뼈대를 기본으로 하여 where을 사용하여 추가 조건들을 넣는 구조입니다.
Q3. course_id별 '오늘의 다짐'에 달린 평균 like 개수 구해보기
Select course_id, round(avg(likes),1) from checkins
group by course_id
여기도 기본 구조는 똑같은데 특히한 점이 'round(avg(likes),1)'에 있습니다.
우선 round는 반올림이며, round(특정 값,1)은 소수점 첫째자리까지 반올림한 숫자를 내보내라
avg(likes)는 avg=average (평균)을 의미하기 때문에 likes라는 필드명의 평균값을 구하라는 의미입니다.
그럼 오늘은 여기까지 하겠습니다.

강의 구성 자체가 1차 강의에서 이어서 오는 구조이고, 많은 실습 내용이 포함되어 있기에 학습에 큰 도움이 되는 것 같습니다.