Show GN: SQL, 진짜 데이터로 배워야 실력이 됩니다
(github.com/civilian7)SQL, 진짜 데이터로 배워야 실력이 됩니다
SQL 튜토리얼은 많습니다. 하지만 대부분 employees 테이블 3개짜리 예제로 끝납니다.
실무에서 마주치는 건 그런 게 아닙니다. 21개 테이블이 외래 키로 엮여 있고, 10년치 주문 데이터에서 월별 매출 추이를
뽑아야 하고, 이탈 위험 고객을 찾아내야 합니다.
그래서 만들었습니다.
https://github.com/civilian7/sql-tutorial — 현실적인 전자상거래 데이터베이스로 배우는 SQL
컴퓨터 쇼핑몰 10년차의 데이터를 시뮬레이션합니다:
- 21개 테이블, 18개 뷰, 5개 트리거 — 실무 수준의 스키마
- 23만~1000만 행 — 규모를 선택할 수 있는 데이터 생성기
- 21개 레슨 — SELECT부터 윈도우 함수, 재귀 CTE, 트리거까지
- 111개 연습 문제 — 초급 45문제, 중급 36문제, 고급 30문제
- 한국어/영어 완전 지원 — 데이터와 문서 모두 이중 언어
- DB 방언 비교 — SQLite, MySQL, PostgreSQL, SQL Server, Oracle
데이터가 현실적입니다. 블랙프라이데이에 매출이 오르고, 여름에 주문이 줄고, 상위 20% 고객이 매출의 60%를 차지합니다.
가입만 하고 주문하지 않는 고객도 25% 있습니다.
pip install -r requirements.txt
python generate.py --size small
output/tutorial.db 생성 (SQLite, ~29MB)
SQL 전문가가 아닌 개발자가 만든 프로젝트입니다. 잘못된 부분이나 더 나은 방법이 있다면 Issues/PR로 알려주세요.