Devin.KR

← 전체 문제

문제 2028 · 중급 5

월별 주문 수 누적합

SQL · window-cte

테스트별 제한 2000ms · 브라우저 채점

문제

취소되지 않은 주문을 월별로 집계하여 month(YYYY-MM), 주문 수, 월 순서 누적 주문 수를 조회하세요.

입력

customer(id PK, name, region NULL, joined_on DATE text)
category(id PK, name UNIQUE)
product(id PK, category_id FK, name, price DECIMAL, active CHECK)
sales_order(id PK, customer_id FK, ordered_on DATE text, status CHECK)
order_line(order_id+line_no PK, product_id FK, quantity CHECK, unit_price DECIMAL, discount DECIMAL)
payment(id PK, order_id FK, paid_amount DECIMAL, paid_on DATE text, method)
employee(id PK, name, manager_id self FK, team, salary)

출력

요구한 열과 행을 SELECT로 반환합니다. 행 순서도 비교합니다.

예제 입력 1

첫 번째 데이터셋 (SQL 연구소에서 확인)

예제 출력 1

month | cnt | SUM(cnt) OVER(ORDER BY month ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
2025-12 | 1 | 1
2026-01 | 1 | 2
2026-02 | 2 | 4
2026-03 | 1 | 5

SQL 연구소에서 예제 데이터·테이블 살펴보기 ↗

힌트 펼치기
  • 먼저 CTE에서 월별 주문 수를 만듭니다.
  • 그 결과에 SUM(cnt) OVER(ORDER BY month ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)를 적용합니다.

관련 장

SQL 실전 기초 · 관련 장

출처: Devin.KR 자체 제작

풀이 작성

코드는 서버로 전송하지 않습니다. 테스트가 공개되는 연습용 채점으로, 대회·인증용이 아닙니다.

Python 채점은 준비 중입니다.

Tab: 공백 2칸 · Esc 후 Tab: 다음 요소로 이동. JavaScript 입력: require('fs').readFileSync(0, 'utf8'), readline 또는 input().

풀이를 제출하면 여기에서 결과를 확인할 수 있습니다.

    로그인 여부와 관계없이 이 브라우저에만 최근 제출 50개를 저장합니다.

    이 브라우저의 제출 기록