데이터베이스
전체 24강 · 7개 Phase. 순서대로 따라오면 돼요.
필수 과정 (SQLD 대비)
▸ Category A · 도입 데이터베이스와 실습 환경 — 첫 SELECT까지
▸ Category B · 데이터 모델링 SQLD 1과목 — 정규화 · 식별자 · 관계
B-1 B-1: 데이터 모델링 개요 — 표는 왜 그렇게 생겼을까, 종이 위 설계의 시작모델링 3요소(엔터티·속성·관계)와 개념·논리·물리 3계층으로 인스타 도메인을 데이터 모델로 바라보기 B-2 B-2: 엔터티와 속성 — 다섯 등장인물을 종류·이름·속살까지 들여다보기엔터티를 유무형·발생시점으로 분류하고 속성을 기본·설계·파생으로 나눠 명명 규칙과 도메인까지 잡기 B-3 B-3: 관계와 식별자 — 선을 잇는 법과, 한 줄을 가리키는 법관계 차수(1:1·1:N·M:N)와 주식별자 4특성(유일·최소·불변·존재)을 익히고 팔로우 M:N을 풀어 식별자 설계하기 B-4 B-4: 정규화와 반정규화 — 중복을 덜어내는 법과, 일부러 다시 더하는 법삽입·갱신·삭제 이상현상을 함수 종속으로 진단해 1NF~BCNF로 단계 분해하고 반정규화 트레이드오프 따지기 B-5 B-5: 트랜잭션·NULL·관계와 조인의 다리트랜잭션 ACID와 NULL 속성을 이해하고 식별자 관계가 어떻게 SQL JOIN으로 이어지는지 다리 놓기
▸ Category C · SQL 기본 SELECT · 함수 · 집계 · 조인
C-1 C-1: SELECT 첫걸음 — 종이 설계를 진짜 SQL로명령어 분류(DDL·DML·TCL·DCL)를 잡고 SELECT·WHERE·ORDER BY로 회원·게시물을 조회·정렬·필터링하기 C-2 C-2: 단일행 함수 — 꺼낸 데이터를 가공하기문자·숫자·날짜·변환·정규식 단일행 함수로 caption에서 해시태그·멘션을 뽑고 가입일을 가공하기 C-3 C-3: NULL과 조건 처리 — 빈 값을 길들이고, 조건으로 값을 바꾸기NVL·COALESCE와 DECODE·CASE로 비어 있는 bio·caption을 대체하고 조건에 따라 회원 등급 분류하기 C-4 C-4: 집계와 그룹 — 여러 행을 한 값으로 모으고, 그룹으로 나눠 묻기COUNT·SUM·AVG 집계함수와 GROUP BY·HAVING으로 회원별 게시물 수·게시물별 좋아요 합계 구하기 C-5 C-5: 조인 완전정복 — 흩어진 표를 이어 붙여 한 화면으로INNER·OUTER·SELF 조인을 ANSI(ON·USING) vs Oracle (+) 문법으로 대조하며 회원-게시물-댓글-좋아요 잇기
▸ Category D · SQL 활용 서브쿼리 · 계층형 · 윈도우 · 집합
D-1 D-1: 집합 연산자 — 두 조회 결과를 더하고 빼고 겹쳐 보기UNION·INTERSECT·MINUS로 맞팔·짝사랑·전체 관계를 구하고 정렬·중복·MINUS 비대칭성 함정 피하기 D-2 D-2: 서브쿼리 — 쿼리 속의 쿼리, 한 조회를 다른 조회의 재료로스칼라·인라인뷰·상관 서브쿼리와 EXISTS·IN·WITH(CTE)로 평균보다 좋아요 많은 게시물 찾고 NOT IN+NULL 함정 피하기 D-3 D-3: 계층형 질의 — 자기 자신을 따라가며 대댓글 트리를 파고들기START WITH·CONNECT BY PRIOR·LEVEL로 대댓글 트리를 깊이별로 전개하고 재귀 CTE와 비교하기 D-4 D-4: 윈도우 함수 ① — 행을 그대로 두고 옆에 순위를 붙이기ROW_NUMBER·RANK·NTILE·LAG·LEAD를 PARTITION BY로 나눠 좋아요 랭킹과 팔로워 전일 대비 증감 구하기 D-5 D-5: 윈도우 함수 ② — 차곡차곡 쌓고, 소계와 총계까지 한 번에누적 SUM OVER와 ROWS·RANGE 프레임, ROLLUP·CUBE·GROUPING SETS로 누적 팔로워와 월별·카테고리별 소계·총계 내기 D-6 D-6: PIVOT · LISTAGG · Top-N — 가로로 펼치고, 한 줄로 모으고, 상위만 떼어 내기PIVOT·UNPIVOT·LISTAGG와 ROWNUM·FETCH FIRST Top-N으로 요일별 좋아요를 펼치고 게시물별 해시태그 모으기 D-7 D-7: DCL & 절차형 SQL — 권한·뷰·시퀀스로 데이터를 "운영"하기GRANT·REVOKE 권한과 프로시저·트리거·사용자정의함수, 뷰·시퀀스 개념을 SQLD 출제 수준으로 잡기
추가 · 선택 과정
▸ Category F · MySQL 마이그레이션 같은 일을 다른 방언으로 (스프링 부트 정합)
▸ Category G · 모던 DB 동향 SQL:2023 · 벡터 · JSON