SQLDSQL 활용난이도 4MCQ

SQLD SQL 활용 기출문제 #1378

문제

다음 윈도우 함수에서 SALARY=3000인 직원의 결과가 다른 경우는?

[EMPLOYEE] SALARY: 2000, 3000, 3000, 4000, 5000

SQL
SQL1: SUM(SALARY) OVER(ORDER BY SALARY ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) SQL2: SUM(SALARY) OVER(ORDER BY SALARY RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)

첫 번째 SALARY=3000 직원 기준으로 올바른 것은?

① SQL1=8000, SQL2=8000 ② SQL1=5000, SQL2=8000 ③ SQL1=8000, SQL2=11000 ④ SQL1=5000, SQL2=5000

정답

2

해설

ROWS는 물리적 행 순서로 첫 번째 3000까지만(2000+3000=5000). RANGE는 값 기준으로 같은 값 3000 두 개 모두 포함(2000+3000+3000=8000). UNBOUNDED PRECEDING은 처음부터를 의미하므로 CURRENT ROW까지의 누적합이 달라진다.

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

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

[SQLD] SQL 활용 기출 #1378 | sqldpass