728x90
반응형
ROW_NUMBER() 은
1. 조회 개수를 제한 하는 경우
2. 조회 순번을 매기는 경우 에 많이 사용한다.
1. 조회 개수를 제한하는 경우
SELECT 절에 TOP(개수)를 사용하여 조회 개수를 제한할 수 있다.
EX)
SELECT TOP(4) WITH TIES
job
, deptno
FROM emp
ORDER BY job, deptno
2. 조회 순번을 매기는 경우
EX)
SELECT ROW_NUMBER() OVER(ORDER BY (SELECT 1)) AS rownum
, ename
, job
, sal
FROM emp
WHERE sal > 2000
ROW_NUMBER 함수를 사용할 때는 ORDER BY를 필수로 사용해야하는데, 의미없는
(SELECT 1)을 부여하여 ORDER BY 없이 조회된 결과의 순번을 부여한다.
EX)
SELECT ROW_NUMBER() OVER(ORDER BY sal DESC) AS rownum
, ename
, job
, sal
FROM emp
WHERE sal > 2000
ORDER BY에 정렬 컬럼을 사용하면 정렬 후 순번이 부여된다.
728x90
반응형
'DB' 카테고리의 다른 글
[DB][Mysql] 여러 개의 조건 걸기 (0) | 2022.08.02 |
---|---|
[DB] 컬럼 alias와 테이블 alias (0) | 2022.08.01 |
[DB][Mysql] sql 작성 순서와 실행 순서 암기! (0) | 2022.07.20 |
[DB][Mysql] CASE() 함수 (0) | 2022.07.18 |
[DB][Mysql] 문자열 함수 (0) | 2022.07.17 |