nullジマ
nullジマ(널지마)에서 설치 없이 SQL을 배우고 실행하세요. SELECT, JOIN, GROUP BY부터 서브쿼리까지 문법 예제, 단계별 문제 풀이, SQLD·SQLP·OCP 연습 문제를 제공합니다.
학습 도우미
- SELECT
원하는 컬럼 조회하기. SELECT는 테이블에서 데이터를 조회하는 가장 기본적인 명령어입니다.
- WHERE
조건으로 데이터 필터링하기. WHERE 절은 조건에 맞는 행만 조회할 때 사용합니다.
- ORDER BY
원하는 기준으로 정렬하기. ORDER BY는 조회 결과를 특정 컬럼 기준으로 정렬합니다.
- GROUP BY
그룹별로 집계하기. GROUP BY는 지정한 컬럼의 값이 같은 행들을 하나의 그룹으로 묶어 집계 함수와 함께 사용합니다.
- JOIN
여러 테이블 연결하기. JOIN은 공통 컬럼을 기준으로 두 테이블의 데이터를 합칩니다.
- 집계 함수
COUNT, SUM, AVG, MAX, MIN. 집계 함수는 여러 행의 데이터를 하나의 값으로 요약합니다.
- 서브쿼리
SELECT 안의 SELECT. 서브쿼리는 쿼리 안에 중첩된 또 다른 쿼리입니다. 집계 결과를 조건으로 사용할 때 유용합니다.
- HAVING
그룹에 조건 걸기. HAVING은 GROUP BY로 만들어진 그룹에 조건을 적용합니다. WHERE가 행을 필터링한다면, HAVING은 그룹을 필터링합니다.
- CASE WHEN / NULL 처리
조건부 값 변환과 NULL 다루기. CASE WHEN은 조건에 따라 다른 값을 반환하는 SQL의 if-else입니다. NULL은 "알 수 없는 값"이므로 일반 비교 연산자로는 처리할 수 없습니다.
- 윈도우 함수
그룹 집계 + 개별 행 유지. 윈도우 함수(Window Function)는 GROUP BY처럼 집계하지만, 행을 합치지 않고 각 행을 유지한 채 집계 결과를 함께 보여줍니다. SQLD/SQLP 필수 개념입니다.
- 집합 연산
UNION, INTERSECT, EXCEPT. 집합 연산은 두 SELECT 결과를 합치거나, 공통 부분을 구하거나, 차집합을 구합니다. 두 쿼리의 컬럼 수와 타입이 같아야 합니다.
문제 풀기
- 전체 직원 조회 · 입문 · SELECT
- 직원 이름과 급여 조회 · 입문 · SELECT
- 전체 부서 조회 · 입문 · SELECT
- 전체 상품 조회 · 입문 · SELECT
- 고급여 직원 조회 · 초급 · WHERE
- 개발팀 직원 조회 · 초급 · WHERE
- 2021년 이후 입사 직원 · 초급 · WHERE
- 급여 높은 순 정렬 · 초급 · ORDER BY
- 급여 상위 3명 · 초급 · LIMIT
- 카테고리 목록 조회 · 초급 · DISTINCT
- 부서별 직원 수 · 중급 · GROUP BY, 집계함수
- 부서별 평균 급여 · 중급 · GROUP BY, 집계함수
- 직원과 부서명 함께 조회 · 중급 · JOIN
- 주문 금액 합계 · 중급 · JOIN
- 직원 2명 이상 부서 · 중급 · HAVING, 집계함수
- 평균 급여 이상인 직원 · 고급 · 서브쿼리
- 카테고리별 최고가 상품 · 고급 · GROUP BY, 집계함수, ORDER BY
- 직원별 총 주문 금액 · 고급 · JOIN, GROUP BY, 집계함수
- 급여 구간 조회 · 초급 · WHERE, BETWEEN
- 이름이 '김'으로 시작하는 직원 · 초급 · WHERE, LIKE
- 특정 부서 직원 조회 · 초급 · WHERE, IN
- 두 번째로 비싼 상품 · 초급 · ORDER BY, LIMIT
- 2022년 이후 입사한 고급여 직원 · 초급 · WHERE, AND
- 모든 부서의 직원 수 (직원 없는 부서 포함) · 중급 · LEFT JOIN, 집계함수
- 급여 등급 분류 · 중급 · CASE WHEN
- 부서명별 평균 급여와 최고 급여 · 중급 · JOIN, GROUP BY, 집계함수
- 총 주문 금액이 높은 직원 (상위 3명) · 중급 · GROUP BY, JOIN, LIMIT
- 부서 내 급여 순위 · 고급 · 윈도우함수, RANK
- 주문이 없는 직원 조회 · 고급 · 서브쿼리, IN
- 월별 누적 주문 금액 · 고급 · 윈도우함수, SUM OVER
- 부서 평균보다 급여가 높은 직원 · 고급 · 서브쿼리, 상관 서브쿼리
- 부서별 급여 등급 인원 집계 · 고급 · CASE WHEN, 집계함수, GROUP BY