濮阳杆衣贸易有限公司

主頁 > 知識(shí)庫 > 一個(gè)基于ROW_NUMBER()的通用分頁存儲(chǔ)過程代碼

一個(gè)基于ROW_NUMBER()的通用分頁存儲(chǔ)過程代碼

熱門標(biāo)簽:數(shù)字匠心電銷機(jī)器人 沒聽見電話機(jī)器人幫你接 al智能電話機(jī)器人 成都電話外呼系統(tǒng)一般多少錢 最新人工智能電銷機(jī)器人 如何做地圖標(biāo)注圖鋪 銀川高頻外呼回?fù)芟到y(tǒng)多少錢 陜西電銷外呼系統(tǒng)好用嗎 蘭州語音外呼系統(tǒng)運(yùn)營商
建立好如下的存儲(chǔ)過程,以后要分頁,直接調(diào)用改存儲(chǔ)過程就可以了。
注意:數(shù)據(jù)量大、性能要求高的,請(qǐng)個(gè)性化處理。
復(fù)制代碼 代碼如下:

ALTER PROCEDURE [dbo].[COMMON_PROCEDURE_SelectWithPage]
@Sql VARCHAR(5000),
@CurrentPageNo INT,
@PageSize INT,
@TotalNum INT OUTPUT
AS
SET NOCOUNT ON
DECLARE @SqlCmd VARCHAR(5000)
------------------------------------------ --查詢數(shù)據(jù)
SET @SqlCmd = 'SELECT * FROM (' + @Sql + ') A WHERE RowIndex BETWEEN ' + CONVERT(VARCHAR,(@CurrentPageNo-1) * @PageSize + 1) + ' AND ' + CONVERT(VARCHAR,@CurrentPageNo * @PageSize)
EXEC(@SqlCmd) PRINT (@SqlCmd)
------------------------------------------ --求記錄總數(shù)
IF @TotalNum = -1
BEGIN
CREATE TABLE #Temp1(num INT)
INSERT INTO #Temp1
EXEC('SELECT count(*) FROM (' + @Sql + ') A')
SELECT @TotalNum=(SELECT * FROM #Temp1)
DROP TABLE #Temp1
END

用法很簡單,但必須在傳入的SQL中使用ROW_NUMBER() OVER(...) AS RowIndex :
DECLARE @Sql VARCHAR(5000)
DECLARE @CurrentPageNo INT
DECLARE @PageSize INT
DECLARE @TotalNum INT

SET @CurrentPageNo = 100
SET @PageSize = 10
SET @TotalNum = -1
SET @Sql = ' SELECT *, ROW_NUMBER() OVER (ORDER BY 排序字段) AS RowIndex FROM 表名 A WITH (NOLOCK) '

EXEC [dbo].[COMMON_PROCEDURE_SelectWithPage] @Sql,@CurrentPageNo,@PageSize,@TotalNum OUTPUT

SELECT @TotalNum
您可能感興趣的文章:
  • sqlserver 通用存儲(chǔ)過程分頁代碼(附使用ROW_NUMBER()和不使用ROW_NUMBER()兩種情況性能分析)
  • sqlserver2005使用row_number() over分頁的實(shí)現(xiàn)方法
  • Oracle row_number() over()解析函數(shù)高效實(shí)現(xiàn)分頁
  • C#拼接SQL語句 用ROW_NUMBER實(shí)現(xiàn)的高效分頁排序
  • SQL2005利用ROW_NUMBER() OVER實(shí)現(xiàn)分頁功能
  • 高效的SQLSERVER分頁查詢(推薦)
  • 解析數(shù)據(jù)庫分頁的兩種方法對(duì)比(row_number()over()和top的對(duì)比)
  • 使用row_number()實(shí)現(xiàn)分頁實(shí)例
  • SQLSERVER分頁查詢關(guān)于使用Top方式和row_number()解析函數(shù)的不同
  • SQL Server使用row_number分頁的實(shí)現(xiàn)方法

標(biāo)簽:朔州 本溪 通化 邢臺(tái) 巴彥淖爾 宜春 鹽城 遼源

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《一個(gè)基于ROW_NUMBER()的通用分頁存儲(chǔ)過程代碼》,本文關(guān)鍵詞  一個(gè),基于,ROW,NUMBER,的,通用,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《一個(gè)基于ROW_NUMBER()的通用分頁存儲(chǔ)過程代碼》相關(guān)的同類信息!
  • 本頁收集關(guān)于一個(gè)基于ROW_NUMBER()的通用分頁存儲(chǔ)過程代碼的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    克山县| 绍兴市| 本溪市| 清新县| 天台县| 中阳县| 荆门市| 义马市| 卢湾区| 乐至县| 浦东新区| 鲁山县| 永顺县| 抚顺市| 桦南县| 栾城县| 娄烦县| 青河县| 阿拉善盟| 屯昌县| 济源市| 聊城市| 兴和县| 彭泽县| 新宾| 衢州市| 阿克陶县| 蛟河市| 利川市| 吉隆县| 陆川县| 四川省| 临湘市| 烟台市| 固原市| 嵩明县| 衡南县| 临江市| 通河县| 荥阳市| 宁晋县|