MSSQL에서 페이징 쿼리 하는방법
1. TOP과 NOT IN 을 사용하는 방법
SELECT TOP ${recordCountPerPage} *
컬럼 FROM 테이블 WHERE
인덱스키_SEQ NOT IN (SELECT TOP 20${firstIndex} 인덱스키_SEQ FROM 테이블 ORDER BY ...)
2. ROW_NUMBER와 BETWEEN 을 사용하는 방법
SELECT *
FROM (
SELECT ROW_NUMBER() OVER (ORDER BY regdate DESC) AS ROW_NUM, *
FROM TEST_TABLE
) T1
WHERE ROW_NUM BETWEEN ${recordCountPerPage} +1 AND ${firstIndex} + ${recordCountPerPage}
'WEB > MSSQL' 카테고리의 다른 글
다른 DB에 있는 테이블 복사하기 (0) | 2020.02.05 |
---|