SQL기초와 데이터분석
1. SQL을 활용한 데이터 분석
1. Indian Restaurant Dataset
- Data Source : https://www.kaggle.com/datasets/abhijitdahatonde/27000-indian-restaurant-dataset
2. Global AI, ML, Data Science Salary
- Data Source : https://www.kaggle.com/datasets/dparas01/global-ai-ml-data-science-salary
3. NBA Players
- Data Source : https://www.kaggle.com/datasets/justinas/nba-players-data/data
2. SQL 기초구문
1. 데이터 조회 기본 : SELECT, FROM, WHERE (=무엇을, 어디에서, 어떤 조건으로)
1-1. 비교연산자 : =, <>, >, <
1-2. 논리연산자 : AND, OR, NOT, IN
2. 정렬과 집계
2-1 GROUP BY
2-2 ORDER BY
2-3 집계함수 : AVG, SUM, COUNT
2-4 HAVING
3. 기초 SQL함수
3-1 문자열 : CONCAT, SUBSTR, CHAR_LENGTH
3-2 숫자 : ROUND, ABS, MOD, COALESCE
4. (Optional) DDL, DML
4-1 DDL : CREATE, ALTER, DROP
4-2 DML : SELECT, INSERT, UPDATE, DELETE
3. 여러 테이블 결합하여 사용하기
1. 다양한 JOINS
1-1 JOIN : 두 개 이상의 테이블을 특정 key를 기준으로 결합하는 것
1-2 INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN
1-3 CROSS JOIN, SELF JOIN
2. UNION, UNION ALL
3. WITH
4. Subquery
4. 다양한 SQL 함수 다루기
1. 타임스탬프 함수
1-1 데이터 타입 : STRING, DATE, DATETIME, TIMESTAMP
1-2 NOW, YEAR, HOUR, WEEKDAY
1-3 날짜형식화 : STR_TO_DATE, DATE_FORMAT
1-4 날짜연산 : DATE_ADD, DATEDIFF, TIMEDIFF, TIME_TO_SEX
2. 타입변환
2-1 CAST, CONVERT
3. 조건문
3-1 IF
3-2 CASE WHEN
4. 그 외 유용한 함수
RANK, PERCENT_RANK, LEAD, LAG
5. 다양한 데이터 타입 다루기
1. 숫자
2. 문자
3. 이진
4. Array
5. Key-value
6. 효율적인 SQL 코드 작성하기
1. 테이블을 집합으로 생각하기
- 필터링으로 최대한 작게 만들어 놓고 JOIN이나 집계 연산 수행
2. *, % 사용 지양하기
3. 데이터 타입 잘 확인하기
4. JOIN시 유의할 점
5. 코드 가독성 높이기
7. SQL을 활용한 데이터분석
1. Indian Restaurant Dataset
1-1 프렌차이즈 여부에 따른 별점의 분포 확인
1-2 상관계수
1-3 가격과 평점에 영향을 주는 변수 확인
2. Global AI, ML Data Science Salary
2-1 그룹별 평균 비교
2-2 연봉에 영향을 주는 변수 확인
3. NBA Players
3-1 시간의 흐름에 따른 평균신장, 몸무게, 게임 수 확인
3-2 시간의 흐름에 따른 상위권 선수들의 지표 확인
위의 내용은 프로그래머스 데이터분석1기 하홍석 강사님의 강의 자료를 참고하였습니다.