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

首頁 > 編程 > ASP > 正文

ASP 千萬級數據分頁的存儲過程

2024-05-04 11:09:05
字體:
來源:轉載
供稿:網友
經測試,在 14483461 條記錄中查詢第 100000 頁,每頁 10 條記錄按升序和降序第一次時間均為 0.47 秒,第二次時間均為 0.43 秒
 
 
 
測試語法如下:powered by vevb.com
exec GetRecordFromPage news,newsid,10,100000 
news 為 表名, newsid 為關鍵字段, 使用時請先對 newsid 建立索引。
復制代碼代碼如下:

/* 
函數名稱: GetRecordFromPage 
函數功能: 獲取指定頁的數據 
參數說明: @tblName 包含數據的表名 
@fldName 關鍵字段名 
@PageSize 每頁記錄數 
@PageIndex 要獲取的頁碼 
@OrderType 排序類型, 0 - 升序, 1 - 降序 
@strWhere 查詢條件 (注意: 不要加 where) 
作  者: 鐵拳 
郵  箱: sunjianhua_kki@sina.com 
創建時間: 2006-07-04 
修改時間: 2006-07-04 
*/ 
CREATE PROCEDURE GetRecordFromPage 
@tblName varchar(255), -- 表名 
@fldName varchar(255), -- 字段名 
@PageSize int = 10, -- 頁尺寸 
@PageIndex int = 1, -- 頁碼 
@OrderType bit = 0, -- 設置排序類型, 非 0 值則降序 
@strWhere varchar(2000) = '' -- 查詢條件 (注意: 不要加 where) 
AS 

declare @strSQL varchar(6000) -- 主語句 
declare @strTmp varchar(1000) -- 臨時變量 
declare @strOrder varchar(500) -- 排序類型 

if @OrderType != 0 
begin 
set @strTmp = '<(select min' 
set @strOrder = ' order by [' + @fldName + '] desc' 
end 
else 
begin 
set @strTmp = '>(select max' 
set @strOrder = ' order by [' + @fldName +'] asc' 
end 

set @strSQL = 'select top ' + str(@PageSize) + ' * from [' 
+ @tblName + '] where [' + @fldName + ']' + @strTmp + '([' 
+ @fldName + ']) from (select top ' + str((@PageIndex-1)*@PageSize) + ' [' 
+ @fldName + '] from [' + @tblName + ']' + @strOrder + ') as tblTmp)' 
+ @strOrder 

if @strWhere != '' 
set @strSQL = 'select top ' + str(@PageSize) + ' * from [' 
+ @tblName + '] where [' + @fldName + ']' + @strTmp + '([' 
+ @fldName + ']) from (select top ' + str((@PageIndex-1)*@PageSize) + ' [' 
+ @fldName + '] from [' + @tblName + '] where ' + @strWhere + ' ' 
+ @strOrder + ') as tblTmp) and ' + @strWhere + ' ' + @strOrder 

if @PageIndex = 1 
begin 
set @strTmp = '' 
if @strWhere != '' 
set @strTmp = ' where (' + @strWhere + ')' 

set @strSQL = 'select top ' + str(@PageSize) + ' * from [' 
+ @tblName + ']' + @strTmp + ' ' + @strOrder 
end 

exec (@strSQL) 

GO 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 高阳县| 白朗县| 石林| 南阳市| 上思县| 南和县| 正镶白旗| 新疆| 丹阳市| 金秀| 连州市| 南通市| 夏邑县| 吴川市| 临武县| 普定县| 屏东市| 定日县| 白玉县| 溧水县| 涞水县| 新津县| 绥宁县| 玉环县| 教育| 墨脱县| 和龙市| 乌拉特后旗| 龙江县| 黑河市| 文成县| 双流县| 京山县| 昌乐县| 涡阳县| 阳江市| 耿马| 宝兴县| 安福县| 高唐县| 阿克|