정보처리기사 실기SQLSQL - 윈도우 함수난이도 5SHORT_ANSWER

정보처리기사 실기 SQL - 윈도우 함수 기출문제 #353

문제

다음 [판매] 테이블에서 SQL문을 실행했을 때, 상품명이 'C'인 행의 cnt 값을 쓰시오.

상품명카테고리판매량
A전자50
B전자80
C의류30
D의류30
E의류70
SQL
SELECT 상품명, COUNT(*) OVER (PARTITION BY 카테고리 ORDER BY 판매량 RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS cnt FROM 판매;

정답

2

2

해설

COUNT() OVER 윈도우 함수가 PARTITION BY 카테고리로 파티션을 나누고, ORDER BY 판매량으로 정렬한다. RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW는 파티션 시작부터 현재 행과 같은 값까지의 행을 카운트한다. 의류 카테고리에서 C(30)와 D(30)는 같은 판매량이므로, C의 cnt는 C와 D 두 행을 카운트하여 2가 된다.

이런 문제 20~50개를 한 번에 풀어보세요

매번 새로 추가되는 모의고사 + 오답 자동 복습 + 회차별 실력 추적. 회원가입 후 무료 이용.