by grape111 [SQL Query] paging 페이징 쿼리 오라클 [2020.07.09 00:13:45]
안녕하세요
오라클 페이징 쿼리를 ROW_NUMBER() 사용하지 않고 구현하는 방법이 있나요?
ROW_NUMBER시 order by를 하니 너무 느려서요. . 따로 인덱스도 없고 인덱스만들수 있는 상황도 아니라서요..
쿼리자체로서 성능을 내야하거든요..
아래와 같이 쿼리를 짯는데요. 실제로 정렬숫서는 필요없으니
페이징마다 중복된 데이터 없이 한번씩만 나오기만 하면 되는데요..혹시 페이징 쿼리짤때 ROW_NUMBER()를 사용하지 않고 구현하는 방법이 있을까요?
SELECT * FROM
(
SELECT
ROW_NUMBER() OVER(ORDER BY BB.COL1 DESC) RN, *
FROM TB BB
)
WHERE RN BETWEEN ? AND ?