分頁儲存過程

2021-04-12 16:43:04 字數 1698 閱讀 8834

create procedure pro_select

@pageindex  int,

@pagesize  int

as/*

select student.sno,student.sname,student.s*** ,grade.math,grade.physics,grade.huaxue,grade.chinese,grade.english

from student,grade

where student.sno=grade.sno

*/declare @numresults int

select  @numresults = count(student.sno)

from student,grade

where student.sno=grade.sno

if (@pageindex >= 0 and @pageindex < ((@numresults/@pagesize) +1))

begin

declare @pagelowerbound int --查詢記錄開始處

declare @pageupperbound int --查詢記錄結束處

declare @rowstoreturn int   --返回的實際記錄數

-- first set the rowcount

-- 設定返回的實際記錄數

set @rowstoreturn = @pagesize * (@pageindex + 1)

set rowcount @rowstoreturn

-- set the page bounds

-- 設定查尋範圍

set @pagelowerbound = @pagesize * @pageindex

set @pageupperbound = @pagelowerbound + @pagesize + 1

-- create a temp table to store the select results

-- 建立臨時表存放查詢結果

create table #pageindex

(indexid int identity (1, 1) not null,

id bigint --查詢表的主鍵(可更改1)

)-- insert into the temp table

-- 向臨時表存放查詢表的所有主鍵

insert into #pageindex (id)

select

student.sno --(可更改2)

from --(可更改3)

student,grade

where student.sno=grade.sno

select  a.sno,a.sname,a.s*** ,b.math,b.physics,b.huaxue,b.chinese,b.english

from  student a,grade b,#pageindex pageindex

where

a.sno=b.sno and

a.sno = pageindex.id and --(可更改8)

pageindex.indexid > @pagelowerbound and

pageindex.indexid < @pageupperbound

drop table #pageindex

endgo

分頁儲存過程 分頁儲存過程

分頁儲存過程 alter proc dbo p pageshow pagesize int,每頁大小 currentpage int out,當前頁 housename nvarchar 50 房產名稱 totalcount int out,總記錄數 totalpage int out 總頁數 as...

分頁儲存過程

create proc p sobigo percentpage tblname varchar 255 t category 表名 strgetfields varchar 1000 需要返回的列 fldname varchar 255 排序的欄位名 pagesize int 10,頁尺寸 pag...

分頁 儲存過程

方法一 任何條件的sql語句 create procedure xiaozhengge sqlstr nvarchar 4000 查詢字串 currentpage int,第n頁 pagesize int 每頁行數 asset nocount on declare p1 int,p1是游標的id r...