학습용 기출·복원자료 분류 확인SQLD · 2025년 58회 SQL 기본 및 활용 · 29번
RANK() 함수와 DENSE_RANK() 함수의 결과 차이로 올바른 것은? (데이터는 100, 100, 200 이며 내림차순 기준이다.)?
1
RANK: 1, 1, 3 / DENSE_RANK: 1, 1, 2
정답 근거RANK: 동일 순위만큼 건너뜀 (1, 1, 3), DENSE_RANK: 동일 순위가 있어도 다음 순위를 연속해서 부여 (1, 1, 2) 따라서 1번 보기 ‘RANK: 1, 1, 3 / DENSE_RANK: 1, 1, 2’의 적용 여부를 문제 조건과 대조해야 한다.
2
RANK: 1, 2, 3 / DENSE_RANK: 1, 1, 2
오답 이유‘RANK: 1, 2, 3 / DENSE_RANK: 1, 1, 2’은 이 문항에서 요구하는 ‘RANK: 1, 1, 3 / DENSE_RANK: 1, 1, 2’의 정의·역할과 구분된다. RANK: 동일 순위만큼 건너뜀 (1, 1, 3), DENSE_RANK: 동일 순위가 있어도 다음 순위를 연속해서 부여 (1, 1, 2) 따라서 2번 보기 ‘RANK: 1, 2, 3 / DENSE_RANK: 1, 1, 2’의 적용 여부를 문제 조건과 대조해야 한다.
3
RANK: 1, 1, 2 / DENSE_RANK: 1, 2, 3
오답 이유‘RANK: 1, 1, 2 / DENSE_RANK: 1, 2, 3’은 이 문항에서 요구하는 ‘RANK: 1, 1, 3 / DENSE_RANK: 1, 1, 2’의 정의·역할과 구분된다. RANK: 동일 순위만큼 건너뜀 (1, 1, 3), DENSE_RANK: 동일 순위가 있어도 다음 순위를 연속해서 부여 (1, 1, 2) 따라서 3번 보기 ‘RANK: 1, 1, 2 / DENSE_RANK: 1, 2, 3’의 적용 여부를 문제 조건과 대조해야 한다.
4
두 함수의 결과는 동일하다.
오답 이유‘두 함수의 결과는 동일하다.’은 이 문항에서 요구하는 ‘RANK: 1, 1, 3 / DENSE_RANK: 1, 1, 2’의 정의·역할과 구분된다. RANK: 동일 순위만큼 건너뜀 (1, 1, 3), DENSE_RANK: 동일 순위가 있어도 다음 순위를 연속해서 부여 (1, 1, 2) 따라서 4번 보기 ‘두 함수의 결과는 동일하다.’의 적용 여부를 문제 조건과 대조해야 한다.
ANSWER & EXPLANATION
정답 1번
핵심 판단은 1번 ‘RANK: 1, 1, 3 / DENSE_RANK: 1, 1, 2’입니다. RANK: 동일 순위만큼 건너뜀 (1, 1, 3), DENSE_RANK: 동일 순위가 있어도 다음 순위를 연속해서 부여 (1, 1, 2)