一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數據庫技術|

服務器之家 - 數據庫 - Sql Server - 分頁查詢 效率最高

分頁查詢 效率最高

2019-11-07 16:09mssql教程網 Sql Server

給大家分享個效率最高的分頁查詢 5000萬級別有效 比 ROWNUMBER 和Top效率高

代碼如下:

/* 

日期:2009-03-19 
功能:根據各種條件獲取 游戲國家任務 列表數據 
*/ 
Create procedure [dbo].[PrGs_Nation_Task_GetList] 

@PageSize int = 100, -- 每頁顯示記錄條數,默認為100 
@PageIndex int = 1, -- 當前提取要顯示的頁碼,默認為1,數據庫根據PageSize,PageIndex 計算返回一頁數據 

@RetTotal int output, -- 記錄總數 
@RetCount int output, -- 返回記錄數 
@RetPageIndex int output, -- 輸出當前頁碼 
@ReturnDesc varchar(128) output -- 返回操作結果描述 
as 
begin 

set nocount on 
set xact_abort on 

set @RetTotal = 0 
set @RetCount = 0 
set @RetPageIndex = @PageIndex 




-- 多條件取值 
declare @Err int -- 錯誤 
declare @PageCount int -- 總頁數 
declare @BeginRID int -- 開始行 Rid 
declare @MaxRow int -- 最后行 

select @RetTotal = count(*) 
from NationTask 

select @Err = @@ERROR 

if @Err <> 0 
begin 
set @ReturnDesc = '提取國家任務總數失敗!' 
return -1 
end 

-- 如果無數據, 則返回空結果集 
if @RetTotal = 0 
begin 
set @ReturnDesc = '當前條件無國家任務記錄!' 
return 1 
end 

-- 計算總頁數 
set @PageCount = @RetTotal / @PageSize 

if @RetTotal % @PageSize > 0 
begin 
set @PageCount = @PageCount + 1 
end 

-- 超過總頁數,則返回空結果集 
if @PageIndex > @PageCount 
begin 
set @ReturnDesc = '當前條件無國家任務記錄!' 
return 1 
end 

-- 獲取 要返回頁面的 第一行紀錄的 Rid 
set @MaxRow = @PageSize * (@PageIndex - 1) + 1 

set rowcount @MaxRow 

select @BeginRID = Rid 
from NationTask 
order by Rid desc 


-- 返回數據列表 
set rowcount @PageSize 

select Rid 
,TaskName 
,TaskTitle 
,ImageID 
,EffectID 
,StartTime 
from NationTask 
where Rid <= @BeginRID 
order by Rid desc 

set @RetCount = @@rowcount 

-- 結束 
set @ReturnDesc = '提取國家任務列表成功!' 
return 1 
end 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 911爱豆传媒国产 | 日本视频观看 | 国产精品麻豆 | 久久日韩精品无码一区 | 精品国内自产拍在线视频 | 日本性生活免费看 | 岛国片免费看 | 亚洲视频一区二区在线观看 | 99在线在线视频免费视频观看 | 99re5精品视频在线观看 | 农村妇女野外性生话免费视频 | 国产一区二区三区福利 | 网站久久 | 暖暖视频日本 | 丝瓜视频成人在线观看 | 美女靠逼免费网站 | 久久热在线视频精品店 | 男人午夜剧场 | 免费国产好深啊好涨好硬视频 | 亚州第一页 | 性做久久久久久 | 美女脱了内裤打开腿让人桶网站o | 草草国产成人免费视频 | 精品夜夜澡人妻无码AV蜜桃 | 亚洲第一永久色 | xxx黑人又大粗又长 xxxx性欧美极品另类 | 亚洲AV无码A片在线观看蜜桃 | 极品美女a∨片在线看 | 日本一区二区视频在线 | 午夜网| 久草在线草a免费线看 | 婚前试爱免费观看 | 免费看成人毛片日本久久 | 操操综合网 | 午夜福利电影网站鲁片大全 | 国产欧美久久一区二区 | 久热人人综合人人九九精品视频 | 日本一区视频 | 日韩精品视频观看 | 好紧好爽范冰冰系列 | 嗯啊在线观看免费影院 |