MS-SQL에서 페이징처리를 할려고 TOP를 사용하는데 결과가 제대로 나오질 않습니다..
제가 사용해본 쿼리는 다음과 같습니다.
SELECT TOP 10 * FROM (
SELECT TOP 1238
A.SUNAP_YMD,
A.DONG, A.HO,
B.GYEYAK_NM,
(SELECT COMMON_NM FROM TB_DET_CODE WHERE TYPE_CD='3060' AND
COMMON_CD=A.SUNAP_JONGRYU) SUNAP_JONGRYU_NM,
A.GYE,
A.IPGEUM_YMD
FROM
TB_SUNAP A, TB_IBJUJA B
WHERE
A.IDEP_CD='320320'
AND B.JUMIN_NO=A.JUMIN_NO ORDER BY A.SUNAP_YMD ASC
) T ORDER BY T.SUNAP_YMD DESC
PK는 JOJEONG_YM, IDEP_CD, SAUP_CD, DONG, HO, JUMIN_NO 입니다.
위 쿼리에서 1238 총 ROW수이고 값을 10개씩 가져오기위해서 1228 ,1218 이런씩으로 변경하면서 테스트해봤는데..
계속 같은 결과값이 나옵니다.
왜 그런지 어떻게 해결 가능할지 도움 부탁드립니다.
|