페이징 2

[MSSQL] 대용량 데이터 페이징 처리 성능 최적화 가이드

데이터베이스의 규모가 커질수록 SELECT *로 모든 데이터를 가져오는 것은 불가능에 가깝습니다.수백만 건의 데이터 중 사용자가 보고 있는 10~20건만 효율적으로 골라내는 MSSQL 페이징 기법 3가지를 소개합니다.1. OFFSET-FETCH (SQL Server 2012 이상 권장)ANSI 표준이며 현재 MSSQL에서 가장 권장되는 방식입니다. 구문이 직관적이고 가독성이 매우 높습니다.특징: 반드시 ORDER BY 절과 함께 사용해야 합니다.장점: 코드가 간결하며 유지보수가 쉽습니다.SQL -- 11번째부터 10개의 행을 가져오는 예시 (Page 2)SELECT *FROM OrdersORDER BY OrderDate DESC, OrderID ASCOFFSET 10 ROWS FETCH NEXT 10 R..

[Oracle]오라클 대용량 데이터 페이징 처리 완벽 가이드

대용량 테이블에서 단순히 SELECT를 수행하면 전체 데이터를 읽어오느라 성능이 급격히 저하됩니다.사용자가 필요한 범위만큼만 데이터를 끊어서 가져오는 효율적인 페이징 기법 3가지를 소개합니다.1. ROWNUM과 인라인 뷰를 이용한 전통적 방식 (Oracle 11g 이전)오라클 11g 이하 버전에서 가장 많이 사용되던 방식입니다.ROWNUM은 행이 추출되는 순서대로 번호를 부여하는 가상 컬럼입니다.구현 원리: 정렬된 서브쿼리(인라인 뷰)를 먼저 실행한 후, ROWNUM으로 범위를 지정합니다.특징: 반드시 2중 중첩 구조를 사용해야 합니다. WHERE ROWNUM > 10과 같은 조건은 첫 번째 행부터 체크하기 때문에 직접 사용하면 결과가 나오지 않기 때문입니다.SQL SELECT * FROM ( SE..