유데미 강의 후기
- 총 324강, 17.5시간 분량의 강의. 대부분 1.5배속으로 수강
- SQL을 현업에서 주언어로 사용 중이라 잘 모르는 것은 아니었지만, 혹시 잊어버렸거나 기본에서 놓친 부분이 있는지 확인하기 위해서라도 처음부터 끝까지 들어봤습니다.
- SQL, 특히 MySQL의 고수이자, 해외에서 사용하는 SQL의 습관 등이 있는지 보기 위해서 들어봤습니다.
- 근본부터 알려주다보니 SQL을 실행하기 전 DB나 테이블에 대한 여러 정보를 확인하고 하는 습관이 있다는 것을 알았습니다.
- SQL 코딩 테스트를 앞두고 있거나, 현업에서 사용하기 전에 기본적으로 알아야할 문법을 근본있게 듣고 싶은 경우에 들으면 좋은 강의라고 생각합니다.
https://www.udemy.com/course/best-mysql-k/?couponCode=1CF18BB7FDB7197A565D
수강 과정
처음 들었을 때 섹션4 까지 수강 (약 15%), 두 번째 수강 섹션 10까지 수강 (약 50%), 세 번째 수강 섹션 16까지 수강 (약 70%), 네 번째 수강 섹션 18까지 수강 (약 90%), 다섯 번째 수강 완강 (100%) 하였습니다.
SQL에 대해서 처음 배우고 싶은 경우 들으면 매우 도움이 될 강의라고 생각합니다. SQL의 기본이 되는 DB에 대한 간단한 설명, CRUD(Create, Read, Update, Delete) 방법 등 기초적인 SQL문과 자연스럽게 친해지도록 가이드해 줍니다. 또한 집중력, 지루함을 고려해서 15분 이상의 강의를 하지않도록 조절되어 있어서 좋았습니다.
섹션별 강의 내용 요약
섹션1)
데이터베이스란 무엇인가?
우리가 액세스 가능한 인터페이스를 가진 계산된 데이터의 구조화된 집합체
MySQL은 DB관리시스템임(DBMS)
SQL은 DB에 말을 거는 행위
DBMS마다 SQL은 매우 흡사하지만, 정말 같지는 않음. SQL 표준이 있음.
또 다른 차이는 작업환경에 대한 차이임
섹션2)
MySQL의 설치를 도와줍니다.
섹션3)
데이터베이스 매니저 시스템인 mysql에서 테이블(데이터베이스 : DB)을 생성, 삭제를 자세히 알려줌.
관계형 DB에 대해서 쉽게 설명해 줌.
섹션4~5)
CRUD 명령에 대해서 상세히 알려줍니다. 알고 있는 내용이었지만, 메커니즘을 다시 한번 되새기는데 좋았습니다.
섹션6)
앞서 배웠던 CRUD에 대한 예제와 풀이를 알려줍니다.
섹션7)
문자열과 관련된 SQL 함수에 대한 사용법을 알려줍니다. CONCAT, SUBSTRING, REPLACE, REVERSE, CHAR LENGTH, UPPER, LOWER에 관한 설명을 상세히 해줍니다.
섹션8)
distinct, order by, limit, like 함수에 대한 설명을 해줍니다. 모든 데이터를 있는 그대로 보기에는 한계가 있기 때문에 위 함수들을 활용해서 어느 정도 정리해서 보는 것을 추천합니다.
섹션9)
집계함수에 대해서 알려줍니다. Group by의 작동방식 및 활용성에 대해서 알려줌과 동시에 min, max, sum, count, avg 등의 함수를 적절히 활용하는 방법에 대해서 상세하게 설명합니다.
섹션10)
Date 포맷에 대한 설명을 하면서 DB에서 SQL로 대화할 때는 CRUD가 가장 중요하고, 데이터타입/포맷의 경우는 나중에 생각해도 된다는 것을 강조했습니다. 저도 어느 정도 사용해 보니 테이터타입에 관한 부분은 부수적일 뿐이고, DB와 친숙하게 대화하는 대에는 select, cretae, update , delete를 적재적소에 잘 활용하는 것이 더 중요하다고 봤습니다.
섹션11)
논리 연산자에 대한 섹션입니다. where 절에 들어갈 수 있는 between, not equal, >, <, like, not like, or, in, case 구문에 대해서 알려줍니다.
섹션12)
테이블을 생성 시에 CONSTRAINT(제약조건)을 거는 방법에 대해서 알려줍니다. ALTER TABLE 등으로 추후에 컬럼을 삭제, 이름변경 등에 대해서 상세히 알 수 있습니다.
섹션13)
RDBMS의 개념을 설명합니다. 데이터는 서로에 대한 관계로 존재하는 것을 설명해 줍니다. 일대일, 다대일, 다대다 관계를 예시를 통해 쉽게 설명해 줍니다.
현업에서 사용할 수 있는 데이터를 가지고, ERD를 구성할 수 있도록 도움을 줍니다. 예를들어 온라인 주문에 관련된 데이터는 주문과, 고객 테이블을 분리하여야 하고, PK와 FK를 설정하는 과정을 알 수 있습니다.
또 각 조인(Inner, Left, Right, Cross)에 대한 상세한 설명과 예시를 보여주어서 쉽게 조인의 개념을 알 수 있었습니다.
섹션14)
세견13에서 배웠던 조인 개념을 적용하는 과제와 풀이를 제공합니다. 조인 후에 Group by 절을 이용한 집계함수 사용하는 예제를 통해 MySQL 실사용 예시를 보여줍니다.
섹션15)
뷰의 기능에 대해서 상세히 알려줍니다. GROUP BY와 함께 쓰면 좋은 HAVING절과 WITH ROLLUP절에 대한 설명도 합니다.
HAVING의 경우 GROUP BY 이후에 사용하는 제약조건이고, WITH ROLLUP의 경우는 집계함수에 대해서 마지막 요약 집계를 보여줍니다.
다음으로 SQL 각 모드에 대해 설명합니다. SQL을 입력할 때 기본 설정을 해줍니다. 예를 들어 소수점 컬럼에 문자가 들어갈 때, 디폴트로 0.0으로 넣어 준다 던 지 하는 테이블 DML과 관련된 설정을 해줍니다.
섹션16)
윈도우함수에 대해서 다룹니다. 처음 SQL을 접했을 때 어려웠던 기억이 있는데요. 이는 기존에 직관적인 집계함수와 다르게 OVER() 절을 포함한 PARTITION BY, ORDER BY 등 새로운 문법/어순이 등장했기 때문이 아니었다 싶습니다.
해당 강의에서 RANK, ROW_NUMBER, NTILE, FIRST_VALUE, LAST_VALUE, LEAD, LAG의 사용 예시를 들어주면서 쉽게 풀어주어서 이해하기도 쉬웠습니다.
섹션17,18)
인스타그램의 유저, 게시글, 좋아요, 해시태그 등의 데이터에 대한 DBMS를 구성하고, 예시 데이터로 실전에서 사용할만한 예제로 훈련합니다. 해당 강의를 통해서 다양한 상황에서 원하는 데이터를 뽑아내는 연습을 할 수 있습니다.
SQL 문법을 연습하기 위해 유용한 사이트 모음
초급 및 중급 SQL
https://www.w3schools.com/sql/
SQL Tutorial
W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.
www.w3schools.com
https://www.geeksforgeeks.org/sql-tutorial/?ref=gcse
SQL Tutorial
SQL Tutorial - SQL stands for Structured Query Language is a standard database language that is used to create, maintain and retrieve data from relational databases like MySQL, Oracle, SQL Server, PostGre, etc.
www.geeksforgeeks.org
고급 SQL
https://www.hackerrank.com/domains/sql
Solve SQL Code Challenges
A special-purpose language designed for managing data held in a relational database.
www.hackerrank.com
https://leetcode.com/studyplan/
Study Plan - LeetCode
Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.
leetcode.com
*해당 콘텐츠는 유데미로부터 강의 쿠폰을 제공받아 작성되었습니다.
'SQL, 빅쿼리' 카테고리의 다른 글
Copilot(코파일럿)을 사용해보자! in 파이참(PyCharm) (2) | 2024.07.23 |
---|---|
구글시트에서 빅쿼리(BigQuery)를 연결하는 데이터 커넥트(Data Connect)를 사용해보자 (0) | 2023.04.20 |
구글 빅쿼리 성능 및 비용 최적화 (0) | 2023.03.20 |