SQL 개발자 자격증SQL 활용윈도우 함수 NTILE난이도 2MCQ

SQL 개발자 자격증 윈도우 함수 NTILE 기출문제 #21838

문제

8명의 사원을 급여 내림차순으로 정렬한 뒤 다음 SQL을 실행했다. 그룹 컬럼에 부여되는 값을 위에서부터 순서대로 나열한 것은?

① 1,1,2,2,3,3,3,3 ② 1,2,3,1,2,3,1,2 ③ 1,1,1,2,2,2,3,3 ④ 1,1,1,1,2,2,3,3

정답

3

해설

정답은 ③(1,1,1,2,2,2,3,3)이다. NTILE(n)은 정렬된 행들을 n개 그룹으로 최대한 균등 분할한다. 8행을 3그룹으로 나누면 8 ÷ 3 = 2 나머지 2이므로, 앞쪽 그룹부터 나머지를 한 개씩 더 배분한다. 즉 그룹 크기는 3, 3, 2가 되어 1이 3개, 2가 3개, 3이 2개 → 1,1,1,2,2,2,3,3이다.

  • ①·④: 그룹별 개수 배분(3,3,2)을 잘못 계산한 경우.
  • ②: NTILE을 라운드로빈처럼 1,2,3을 번갈아 매기는 것으로 오해한 경우로, NTILE은 연속된 블록으로 나눈다.

보충: 나머지가 있으면 '앞 그룹부터' 크기가 1씩 커진다. NTILE(4)로 8행이면 정확히 2,2,2,2.

SQL 개발자 자격증 SQL 활용 다른 기출문제

SQL 개발자 자격증 시험 준비 가이드

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

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