목차
실습 환경 준비: MySQL, 깃허브 연결
유형 1. INNER JOIN
_문제 1. 기본 INNER JOIN
_문제 2. 서브 쿼리와 INNER JOIN
_문제 3. 셀프 조인
유형 2. LEFT OUTER JOIN
_문제 1. 기본 LEFT OUTER JOIN
_문제 2. WHERE에 오른쪽 테이블 조건 추가
_문제 3. ON에 조건 추가
유형 3. CROSS JOIN
_문제 1. 일대다(1:N) CROSS JOIN
_문제 2. 다대다(N:N) CROSS JOIN
유형 4. FULL OUTER JOIN
_문제 1. 2개의 LEFT OUTER JOIN과 UNION
유형 5. GROUP BY
_문제 1. 기본 GROUP BY
_문제 2. CASE WHEN과 GROUP BY
_문제 3. 파티션별 집계
유형 6. HAVING
_문제 1. 기본 HAVING
_문제 2. 그룹별 식별자
_문제 3. WHERE와 HAVING
_문제 4. 서브 쿼리 HAVING
유형 7. MIN, MAX
_문제 1. 기본 MIN, MAX
_문제 2. MIN, MAX를 이용한 서브 쿼리
_문제 3. MIN, MAX를 이용한 서브 쿼리
유형 8. SUM, COUNT
_문제 1. CASE WHEN에서 SUM과 COUNT의 차이
_문제 2. 누적 합계
_문제 3. 파티션별 누적 합계
유형 9. CASE WHEN
_문제 1. CASE WHEN과 GROUP BY
_문제 2. CASE WHEN의 다중 조건
_문제 3. 서로 다른 THEN 결괏값의 SUM
_문제 4. 독립적인 쿼리들의 UNION
유형 10. IFNULL
_문제 1. LEFT OUTER JOIN과 IFNULL
_문제 2. LEFT OUTER JOIN과 IFNULL
유형 11. LIMIT
_문제 1. 기본 ORDER BY와 LIMIT의 조합
_문제 2. GROUP BY 이후 1위 추출
_문제 3. INNER JOIN, GROUP BY 이후 1위 추출
유형 12. NOT IN
_문제 1. 기본 NOT IN
_문제 2. IN과 NOT IN의 서브 쿼리
_문제 3. NOT IN과 GROUP BY
유형 13. RANK
_문제 1. PARTITION BY를 사용한 RANK
_문제 2. PARTITION BY를 사용한 RANK
유형 14. DENSE_RANK
_문제 1. 기본 DENSE_RANK
_문제 2. 2위 순위 조회
유형 15. ROW_NUMBER
_문제 1. RANK, DENSE_RANK, ROW_NUMBER 비교
_문제 2. 기본 ROW_NUMBER
유형 16. LAG, LEAD
_문제 1. 기본 LAG, LEAD
_문제 2. LAG 이후 WHERE 조건 추가
_문제 3. LAG 이후 SELECT의 IF 조건 추가
유형 17. DATE
_문제 1. TIMESTAMP 데이터 타입
_문제 2. DATE_ADD, DATE_SUB 함수
_문제 3. DATE_FORMAT 함수
유형 18. CONCAT
_문제 1. 기본 CONCAT
_문제 2. 기본 GROUP_CONCAT
SQL 문제 세트 1
SQL 문제 세트 2
SQL 문제 세트 3
찾아보기