国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

基于sqlserver的四種分頁方式總結

2024-08-31 01:05:14
字體:
來源:轉載
供稿:網友

第一種:ROW_NUMBER() OVER()方式

select * from (
    select *, ROW_NUMBER() OVER(Order by ArtistId ) AS RowId from ArtistModels
  ) as b

where RowId between 10 and 20

---where RowId BETWEEN 當前頁數-1*條數 and 頁數*條數---     

執行結果是:sqlserver,分頁

第二種方式:offset fetch next方式(SQL2012以上的版本才支持:推薦使用 )

select * from ArtistModels  order by ArtistId offset 4 rows fetch next 5 rows only
                  --order by ArtistId offset 頁數 rows fetch next 條數 rows only ----

執行結果是:sqlserver,分頁

第三種方式:--top not in方式 (適應于數據庫2012以下的版本)

select top 3 * from ArtistModels
where ArtistId not in (select top 15 ArtistId from ArtistModels)

------where Id not in (select top 條數*頁數  ArtistId  from ArtistModels) 

執行結果:sqlserver,分頁

第四種方式:用存儲過程的方式進行分頁 

CREATE procedure page_Demo
@tablename varchar(20),
@pageSize int,
@page int
AS
declare @newspage int,
@res varchar(100)
begin
set @newspage=@pageSize*(@page - 1)
set @res='select * from ' +@tablename+ ' order by ArtistId offset '+CAST(@newspage as varchar(10)) +' rows fetch next '+ CAST(@pageSize as varchar(10)) +' rows only'
exec(@res)
end
EXEC page_Demo @tablename='ArtistModels',@pageSize=3,@page=5

執行結果:sqlserver,分頁

ps:今天搞了一下午的分頁,通過上網查資料和自己的實驗,總結了四種分頁方式供大家參考,有問題大家一起交流學習。


注:相關教程知識閱讀請移步到MSSQL教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 唐山市| 博兴县| 阜平县| 铜鼓县| 巴林右旗| 惠水县| 开阳县| 杨浦区| 怀来县| 卢氏县| 积石山| 颍上县| 姚安县| 彰武县| 邛崃市| 原平市| 容城县| 渝北区| 那曲县| 高邮市| 鲜城| 会东县| 新安县| 沙河市| 横峰县| 晋宁县| 惠安县| 双江| 清流县| 寿光市| 同江市| 西峡县| 北海市| 尼木县| 镇平县| 乐山市| 凤山市| 射阳县| 安远县| 谷城县| 海林市|