기술과 산업/아키텍처

오라클 페이징 쿼리

B컷개발자 2016. 2. 26. 17:44
728x90

1.

SELECT

    *

FROM

    (SELECT

        ROWNUM AS RNUM, T1.*

    FROM

        (SELECT

            *

        FROM

            테이블명

        ORDER BY 기준컬럼 ASC) T1

    WHERE ROWNUM <= 20)

 WHERE RNUM > 0;


2.

SELECT

    * 

FROM(

    SELECT

        ROWNUM AS RNUM, T1.*,        

        COUNT(*) OVER() AS TOTAL_CNT

    FROM(

        SELECT

            *

        FROM

            테이블명

        ORDER BY 기준컬럼 ASC) T1

    )

WHERE

    RNUM > 0 AND RNUM <= 20


3.

SELECT

    AAA.*

FROM(

    SELECT

        COUNT(*) OVER() AS TOTAL_COUNT,

        AA.*

    FROM(

        SELECT

            ROW_NUMBER() OVER (ORDER BY CREATE_DATE ASC) RNUM,

            USER_ID,

            USER_NAME

        FROM

            MPT_USERS

     

    ) AA

) AAA

WHERE

    AAA.RNUM BETWEEN 0 AND 20 


728x90