다음 SQL의 결과로 나오는 RNK, DRNK, RN 값을 순서대로 나… | [SQLD] SQL 개발자 기출유형 모의고사 1회 상세 페이지
1[SQLD] SQL 개발자 기출유형 모의고사 1회
다음 SQL의 결과로 나오는 RNK, DRNK, RN 값을 순서대로 나열한 것은?[게시글]
| 글번호 | 조회수 |
|---|---|
| A1 | 90 |
| A2 | 120 |
| A3 | 90 |
| A4 | 150 |
| A5 | 120 |
| A6 | 60 |
SELECT RNK, DRNK, RN
FROM (SELECT 글번호,
RANK() OVER (ORDER BY 조회수 DESC) AS RNK,
DENSE_RANK() OVER (ORDER BY 조회수 DESC) AS DRNK,
ROW_NUMBER() OVER (ORDER BY 조회수 DESC, 글번호) AS RN
FROM 게시글) T
WHERE 글번호 = 'A3'
ORDER BY RN;1
3, 3, 5
2
4, 3, 4
3
4, 4, 5
4
4, 3, 5
해설
조회수 내림차순은 150, 120, 120, 90, 90, 60 이고 A3 은 90 동점 그룹이므로 RANK는 앞선 3행을 건너뛴 4, DENSE_RANK는 세 번째 값이라 3이다.
ROW_NUMBER 는 동점을 글번호로 다시 정렬해 A1 이 4, A3 이 5를 받는다.
- RANK 를 3으로 보는 것은 DENSE_RANK 처럼 순위를 이어 붙인 것이다.
- DRNK 를 4로 보는 것은 DENSE_RANK 도 순위를 건너뛴다고 본 것이다.
- RN 을 4로 보는 것은 동점 안 정렬 기준인 글번호를 무시한 것이다.
오류나 개정된 내용이 보이면 알려주세요
이어서 풀어보기
[SQLD] SQL 개발자 기출유형 모의고사 1회 50문항 이어서 보기문제·정답·해설을 한 페이지에서 이어서 볼 수 있어요비슷한 기출
- 다음sql결과에알맞는쿼리을작성하시오. selectname,scorefrom성적(1)by(2)(3) 1.order 2.score 3.desc2022년 정보처리기사실기 1회차
- sql문에서괄호안에알맞은답안을작성하시오. ('이름'이란컬럼에'이'로시작하는문자열을'내림차순'하는쿼리결과내용입니다.) select....from...where이름l2021년 정보처리기사실기 2회차
- 다음sql결과에알맞는답을작성하시오. [table] selectcount(col2) fromtable wherecol1in(2,3)orcol2in(3,5); 42022년 정보처리기사실기 2회차