麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

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

SQLSERVER分頁查詢關于使用Top方式和row_number()解析函數的不同

2024-08-31 01:03:40
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了SQLSERVER分頁查詢關于使用Top方式和row_number()解析函數的不同的相關資料,需要的朋友可以參考下
 

臨近春節,心早已飛了不在工作上了,下面小編給大家整理些數據庫的幾種分頁查詢。

Sql Sever 2005之前版本:

select top 頁大小 *from 表名where id not in(select top 頁大小*(查詢第幾頁-1) id from 表名 order by id)order by id 

例如:

select top 10 * --10 為頁大小from [TCCLine].[dbo].[CLine_CommonImage]where id not in(--40是這么計算出來的:10*(5-1)-- 頁大小*(查詢第幾頁-1)select top 40 id from [TCCLine].[dbo].[CLine_CommonImage] order by id)order by id

結果為:

SQLSERVER分頁查詢關于使用Top方式和row_number()解析函數的不同

Sql Sever 2005及以上版本,多了個分頁查詢方法:

/** firstIndex:起始索引* pageSize:每頁顯示的數量* orderColumn:排序的字段名* SQL:可以是簡單的單表查詢語句,也可以是復雜的多表聯合查詢語句*/select top pageSize o.* from (select row_number() over(order by orderColumn) as rownumber,* from(SQL) as o where rownumber>firstIndex; 

例如:

select top 10 numComImg.* from ( select row_number() over(order by id asc) as rownumber,* from (select * FROM [TCCLine].[dbo].[CLine_CommonImage]) as comImg)as numComImg where rownumber>40 

結果:

SQLSERVER分頁查詢關于使用Top方式和row_number()解析函數的不同

這兩個方法,就僅僅是多了一列 rewnumber 嗎?當然不是,來看下內部差別吧:

在兩個SQL上,分別加入以下SQL,并使用MS的“包括執行計劃”,便于查看執行詳情:

SET STATISTICS TIME ONGO 

要執行的SQL:

SET STATISTICS TIME ONGOselect top 10 numComImg.* from ( select row_number() over(order by id asc) as rownumber,* from (select * FROM [TCCLine].[dbo].[CLine_CommonImage]) as comImg)as numComImg where rownumber>40SET STATISTICS TIME ONGOselect top 10 * --10 為頁大小from [TCCLine].[dbo].[CLine_CommonImage]where id not in(--40是這么計算出來的:10*(5-1)-- 頁大小*(查詢第幾頁-1)select top 40 id from [TCCLine].[dbo].[CLine_CommonImage] order by id)order by id 

執行之后,查看執行計劃:

SQLSERVER分頁查詢關于使用Top方式和row_number()解析函數的不同

看得出,兩個同樣功能的SQL,執行時,使用 row_number() 的,要比是用 純TOP方式的,查詢開銷少得多,上圖顯示 28:72,純top方式,使用了兩次聚集掃描。

再來看下執行時間信息:

row_number()方式的:

SQLSERVER分頁查詢關于使用Top方式和row_number()解析函數的不同

純top方式:

SQLSERVER分頁查詢關于使用Top方式和row_number()解析函數的不同

相比之下,還是row_number()解析函數效率比較高寫。

以上所述是小編給大家分享的SQL



注:相關教程知識閱讀請移步到MSSQL教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 欧美h版电影在线观看 | av电影网站在线 | 精品视频在线免费看 | 一级全毛片 | 精品久久久久久久久久久久 | 国语自产免费精品视频在 | 91九色电影| 成人午夜影院 | 国产精品中文在线 | 永久久久 | 精品亚洲视频在线 | 免费在线观看国产精品 | 精品99在线视频 | www日韩在线观看 | 国产成人精品一区二区仙踪林 | 麻豆91精品91久久久 | 国产999视频在线观看 | 蜜桃麻豆视频 | 久久综合给合久久狠狠狠97色69 | 免费a级网站 | 免费黄色在线观看网站 | 国产视频软件在线 | 亚洲网站免费观看 | 天天草夜夜骑 | 国产精品九九久久一区hh | 欧美成人午夜一区二区三区 | www视频免费在线观看 | 毛片国产 | 成年免费视频黄网站在线观看 | 麻豆传传媒久久久爱 | 在线看一区二区三区 | 爱高潮www亚洲精品 chengrenzaixian | 乱淫67194| 91精选视频| 久草成人在线 | 羞羞视频免费观看入口 | 综合毛片 | 国产精品99久久久久久久 | 双性精h调教灌尿打屁股的文案 | 黄色片在线免费播放 | 成人综合在线观看 |