SQL Server 2012 는 Offset/Fetch Next 를 사용 하여 페이지 데이터 조 회 를 실현 합 니 다.

Sql Server 2012 이전에 페이지 를 나 누 는 것 은 주로 ROW 를 사용 합 니 다.NUMBER(),SQL Server 2012 에 서 는 Offset...Rows 를 사용 할 수 있 습 니 다.  Fetch Next...Rows only 방식 으로 페이지 별 데이터 조 회 를 실현 합 니 다.

select [column1]
   ,[column2]
   ...   
   ,[columnN]
from [tableName]
order by [columnM]
offset (pageIndex-1)*pageSize rows
fetch next pageSize rows only
위의 코드 에서 column 1,column 2...columnn 은 조회 할 열 을 표시 합 니 다.tableName 은 표 이름 이 고 columnM 은 정렬 해 야 할 열 이름 입 니 다.pageIndex 는 페이지 번호 이 고 pageSize 는 각 페이지 데이터 의 크기 입 니 다.실제 적 으로 먼저 계산(pageIndex-1)*pageSize 의 결 과 를 계산 한 다음 에 sql 에서 구체 적 인 결과(숫자)를 직접 사용 합 니 다.
예 를 들 어 데이터베이스 에 T 가 있 습 니 다.학생 표,데 이 터 는 다음 과 같 습 니 다.

 만약 에 3 페이지 의 데 이 터 를 조회 해 야 한다 면(데이터 가 적 기 때문에 각 페이지 의 데이터 가 2 개,즉 pageSize=2)SQL 문 구 는 다음 과 같다.

select [Id]
   ,[Name]
   ,[StudentId]
   ,[MajorId]
from T_Student
order by [Id]
offset 4 rows
fetch next 2 rows only
결 과 는 다음 과 같다.

메모:Offset/Fetch Next 를 사용 하려 면 정렬 을 지정 해 야 합 니 다.즉,order by**가 있어 야 합 니 다.
총결산
위 에서 말 한 것 은 소 편 이 소개 한 SQL Server 2012 에서 Offset/Fetch Next 를 사용 하여 페이지 별 데이터 조 회 를 실현 하 는 것 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 메 시 지 를 남 겨 주세요.소 편 은 제때에 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!

좋은 웹페이지 즐겨찾기