CREATE PROCEDURE pageTest --페이지 넘김 테스트
--첫 번째 열에 정렬 필드를 넣어야 합니다
(
@FirstID nvarchar(20)=null, --현재 페이지의 첫 번째 레코드 정렬 필드 값
@LastID nvarchar(20)=null, --현재 페이지의 마지막 레코드 정렬 필드 값
@isNext bit=null, --true 1: 다음 페이지 false 0: 이전 페이지;
@allCount int 출력, --총 레코드 수를 반환합니다.
@pageSize int 출력, --한 페이지의 레코드 수를 반환합니다.
@CurPage int --페이지 번호(페이지) 0: 첫 번째 페이지 -1 마지막 페이지.
)
@CurPage=0인 경우
와 동일
시작하다
--통계적인 총 레코드 수
Product_test에서 @allCount=count(ProductId)를 선택합니다.
@pageSize=10으로 설정
--첫 번째 페이지의 데이터를 반환합니다.
상위 10개 선택
제품 ID,
제품 이름,
소개
ProductId별 Product_test 주문에서
이면
@CurPage=-1
에서 *를 선택하세요.
(상위 10개의 ProductId를 선택하고,
제품 이름,
ProductId desc별 Product_test 주문에서 aa로
소개
ProductId로 주문
그렇지 않으면
시작하다
@isNext=1인 경우
--다음 페이지로 이동
상위 10개 ProductId를 선택하고,
제품 이름,
소개
ProductId > @LastID ProductId별 주문인 Product_test에서
또 다른
--이전 페이지로 이동
에서 *를 선택하세요
(상위 10개의 ProductId를 선택하고,
제품 이름,
소개
Product_test에서 ProductId < @FirstID order by ProductId desc) as bb order by ProductId
끝
수백만 개의 데이터 페이지를 넘기는 것은 100개의 데이터와 같습니다!