儲存過程分頁Sql語句

2021-07-08 14:12:50 字數 1180 閱讀 9873

create proc proc_page

@pageindex int, --當前頁碼

@pagesize int, --每頁多少條

@tablename nvarchar(50), --所要查詢的表名稱

@pagecount int output, --計算 總共多少頁

@recordcount int output --記錄的總數量

as

begin

declare @count int --總共多少條

declare @sql_detail nvarchar(300) --所要執行的查詢sql語句

declare @sql_count nvarchar(300) --所要執行的查詢數量的sql語句

--去除異常資料 start

if @pageindex <1

begin

set @pageindex =1

endif @pagesize <1

begin

set @pagesize =1

end--去除異常資料 end

set @sql_detail = n'select * from (select *,row_number() over(order by ids desc) as num

from ' + quotename(@tablename) + n') as t where num between '+ convert(nvarchar(50),(@pagesize*(@pageindex-1) + 1)) + n' and '+ convert(nvarchar(50), @pagesize*@pageindex)

set @sql_count = n'select @count1=count(*) from ' + @tablename

exec sp_executesql @sql_count,n'@count1 int out',@count output

set @recordcount = @count

set @pagecount = ceiling( @count*1.0/@pagesize) -- ceiling: 返回大於或等於所給數字表示式的最小整數

exec sp_executesql @sql_detail

end

分頁SQL語句 儲存過程

分頁儲存過程一 alter procedure dbo fy startrowindex int,maximumrows int asbegin select from select ugid,uname,row number over order by ugid desc rownum from ...

SQL語句的分頁儲存過程

create procedure dbo getrecordfrompage tblname varchar 255 表名 fldname varchar 255 欄位名 pagesize int 10,頁尺寸 pageindex int 1,頁碼 ordertype bit 0,設定排序型別,非0...

SQL分頁語句及簡單的SQL分頁儲存過程

假分頁 從資料庫中選擇所有的記錄後再進行分頁 真分頁 只從資料庫中選擇當前頁的記錄 sql select top每頁顯示的記錄數 fromtopicwhereid not in select top 當前的頁數 1 每頁顯示的記錄數 idfromtopicorder byiddesc order b...