2011년 5월 23일 월요일

Oracle, MySQL, MSSQL 의 페이지처리 쿼리 예제

정렬조건 : aa 컬럼 DESC 
검색어 : bb컬럼중 특정단어 
목록수 : 10~20 까지 

[ORACLE] ROWNUM 을 이용한다. 

SELECT aa, bb, cc, dd FROM 
(SELECT aa, bb, cc, dd, ROWNUM rnum FROM 
(SELECT aa, bb, cc, dd, ROWNUM rnum FROM 테이블명 ORDER BY aa DESC) 
WHERE bb LIKE '%검색어%') 
WHERE rnum >= 10 AND rnum <= 20 






[MySQL] LIMIT 를 이용한다. 

SELECT aa, bb, cc, dd FROM 테이블명 
WHERE bb LIKE '%검색어%' 
ORDER BY aa DESC LIMIT 10, 20 





[MSSQL] TOP 을 이용한다. 

SELECT * FROM 
(SELECT TOP 10 aa, bb, cc, dd FROM 
(SELECT TOP 20 aa, bb, cc, dd FROM 
WHERE bb LIKE '%검색어%' 
테이블명 ORDER BY aa DESC) 
DERIVEDTBL ORDER BY aa) 
DERIVEDTBL ORDER BY aa DESC 

*MSSQL에서 주의할 점은 10은 목록수이고, 20은 목록수 * 현재페이지로 산출된다.

댓글 없음:

댓글 쓰기