[유튜브 방송] (즐겁게 배우는 SQL) 기획 소개에서 설명드린 즐겁게 배우는 SQL 17편을 공개해드리겠다. 17편은 Group By을 소개한다.
2020년 12월 17일자 [즐겁게 배우는 SQL #17] 데이터를 그룹으로 묶어보자 - Group By 방송은 다음에서 볼 수 있으며, 전체 방송 플레이리스트는 즐겁게 배우는 SQL에서 확인할 수 있다.
하이라이트를 요약 정리하면 다음과 같다:
- 00:00 데이터를 그룹으로 묶어보자 - Group By 소개
- 02:51 GROUP BY 예제(COUNT 함수)
- 07:39 GROUP BY 예제(GROUP BY과 INNER JOIN)
- 10:32 GROUP BY 예제(Having)
- 12:29 GROUP BY 예제(SUM 함수)
- 14:57 GROUP BY 예제(MAX, MIN, AVG 함수)
- 16:31 GROUP BY 예제(여러 컬럼)
원본 학습자료는 SQLite Group By을 참고하고, 방송에 사용한 실제 실습 자료는 다음을 참고한다:
- 단계 1: 데이터 질의 방법 소개
SELECT column_1, aggregate_function(column_2) FROM table GROUP BY column_1, column_2;
- 단계 2: GROUP BY 예제(COUNT 함수)
- SQL> SELECT albumid, COUNT(trackid) FROM tracks GROUP BY albumid;
- SQL> SELECT albumid, COUNT(trackid) FROM tracks GROUP BY albumid ORDER BY COUNT(trackid) DESC;
- 단계 3: GROUP BY 예제(GROUP BY과 INNER JOIN)
- SQL> SELECT tracks.albumid, title, COUNT(trackid) FROM tracks INNER JOIN albums ON albums.albumid = tracks.albumid GROUP BY tracks.albumid;
- 단계 4: GROUP BY 예제(Having)
- SQL> SELECT tracks.albumid, title, COUNT(trackid) FROM tracks INNER JOIN albums ON albums.albumid = tracks.albumid GROUP BY tracks.albumid HAVING COUNT(trackid) > 15;
- 단계 5: GROUP BY 예제(SUM 함수)
- SQL> SELECT albumid, SUM(milliseconds) length, SUM(bytes) size FROM tracks GROUP BY albumid;
- 단계 6: GROUP BY 예제(MAX, MIN, AVG 함수)
- SQL> SELECT tracks.albumid, title, min(milliseconds), max(milliseconds), round(avg(milliseconds),2) FROM tracks INNER JOIN albums ON albums.albumid = tracks.albumid GROUP BY tracks.albumid;
- 단계 7: GROUP BY 예제(여러 컬럼)
- SQL> SELECT MediaTypeId, GenreId, COUNT(TrackId) FROM tracks GROUP BY MediaTypeId, GenreId;
댓글 없음:
댓글 쓰기