sql分頁查詢

2021-07-26 18:36:10 字數 723 閱讀 7328

方法一、

alter procedure  pagedquery

(@size int,     頁大小

@pageindex int     頁索引

) as 

select top (@size) * from class where classid not in (select top(@size*@pageindex) classid from class order by classid)

goexec pagedquery 3,0

方法二、

create procedure  pagedquery2

(@size int,

@pageindex int

) as 

select a.* from (select *,row_number() over(order by classid asc) as rowno from class) as a 

where rowno between (@size* @pageindex+1)   and  (@size* (@pageindex+1))

goexec pagedquery2 4,0

(注:分組分頁查詢,

row_number() over (partition by col1 order by col2) 表示根據col1分組,在分組內部根據 col2排序,而此函式計算的值就表示每組內部排序後的順序編號(組內連續的唯一的))

SQL分頁查詢

分頁sql查詢在程式設計的應用很多,主要有儲存過程分頁和sql分頁兩種,我比較喜歡用sql分頁,主要是很方便。為了提高查詢效率,應在排序欄位上加索引。sql分頁查詢的原理很簡單,比如你要查100條資料中的30 40條,你先查詢出前40條,再把這30條倒序,再查出這倒序後的前十條,最後把這十條倒序就是...

sql分頁查詢

declare id int declare moverecords int declare currentpage int declare pagesize int set currentpage 300 set pagesize 100 currentpage和 pagesize是傳入引數 se...

SQL分頁查詢

關於sql語句分頁,網上也有很多啦,我貼一部分過來,並且總結自己已知的分頁到下面,方便日後查閱。方法1 適用於 sql server 2000 2005 1 select top 頁大小 2from table1 3where id not in4 5select top 頁大小 頁數 1 id f...