深入sql server 2005 萬(wàn)能分頁(yè)存儲(chǔ)過(guò)程的詳解
–建立主表臨時(shí)表
CREATE TABLE #temp
(
rownumber bigint,
orderseqno VARCHAR(36),
goodsname VARCHAR(50),
companyname VARCHAR(100)
)
–建立子表臨 時(shí)表
CREATE TABLE #detail
(
orderseqno VARCHAR(36),
detailid UNIQUEIDENTIFIER,
unitprice DECIMAL(12,2),
Qty int
)
–插入主表數(shù)據(jù)到主表臨時(shí)表
insert into #temp
SELECT oo.rownumber, oo.OrderSeqNO, oo.GoodsName, oo.CompanyName FROM
(SELECT ROW_NUMBER () OVER (ORDER BY oi.createdate DESC) AS rownumber,
oi.OrderSeqNO, oi.GoodsName ,ci.CompanyName
FROM OrderInfo oi INNER JOIN CompanyInfo ci ON oi.CompanyID=ci.CompanyID
WHERE oi.CreateDate<GETDATE()
) AS oo
WHERE rownumber BETWEEN 10 AND 20
–定義游標(biāo)
DECLARE @temp_cursor CURSOR
–給游標(biāo)賦值
SET @temp_cursor=CURSOR FOR SELECT #temp.orderseqno,#temp.goodsname FROM #temp
–定義游標(biāo)循環(huán)過(guò)程中所需保存的臨時(shí)數(shù)據(jù)
DECLARE @orderseqno VARCHAR(36),@goodsname varchar(50)
–打開(kāi)游標(biāo)
OPEN @temp_cursor
FETCH NEXT FROM @temp_cursor INTO @orderseqno,@goodsname
–循環(huán)游標(biāo),查詢子表數(shù)據(jù),然后插入子表臨時(shí)表
WHILE @@FETCH_STATUS=0
BEGIN
INSERT INTO #detail
SELECT od.OrderSeqNO,od.OrderDetailID, od.UnitPrice,od.Qty
FROM OrderDetail od
WHERE od.OrderSeqNO=@orderseqno
FETCH NEXT FROM @temp_cursor INTO @orderseqno,@goodsname
END
–關(guān)閉游標(biāo)
CLOSE @temp_cursor
DEALLOCATE @temp_cursor
SELECT * FROM #temp
SELECT * FROM #detail
–刪除臨時(shí)表
DROP TABLE #temp
DROP TABLE #detail
上面的T-SQL只在SQL Server 2005上調(diào)試成功。
- 五種SQL Server分頁(yè)存儲(chǔ)過(guò)程的方法及性能比較
- SQL Server 分頁(yè)查詢通用存儲(chǔ)過(guò)程(只做分頁(yè)查詢用)
- sqlserver2005利用臨時(shí)表和@@RowCount提高分頁(yè)查詢存儲(chǔ)過(guò)程性能示例分享
- 基于Sql Server通用分頁(yè)存儲(chǔ)過(guò)程的解決方法
- mssql 高效的分頁(yè)存儲(chǔ)過(guò)程分享
- SQL Server 2005通用分頁(yè)存儲(chǔ)過(guò)程及多表聯(lián)接應(yīng)用
- MSSQL MySQL 數(shù)據(jù)庫(kù)分頁(yè)(存儲(chǔ)過(guò)程)
- 三種SQL分頁(yè)查詢的存儲(chǔ)過(guò)程代碼
- SQL通用存儲(chǔ)過(guò)程分頁(yè),支持多表聯(lián)合
- SQL分頁(yè)查詢存儲(chǔ)過(guò)程代碼分享
相關(guān)文章
SQL?Server附加數(shù)據(jù)庫(kù)時(shí)出現(xiàn)錯(cuò)誤的處理方法
通過(guò)附加功能添加現(xiàn)成的數(shù)據(jù)庫(kù)是非常方便的,然而有時(shí)會(huì)出現(xiàn)附加數(shù)據(jù)庫(kù)失敗,下面這篇文章主要給大家介紹了關(guān)于SQL?Server附加數(shù)據(jù)庫(kù)時(shí)出現(xiàn)錯(cuò)誤的處理方法,需要的朋友可以參考下2022-12-12
sql server通過(guò)腳本進(jìn)行數(shù)據(jù)庫(kù)壓縮全備份的方法【推薦】
這篇文章主要介紹了sql server通過(guò)腳本進(jìn)行數(shù)據(jù)庫(kù)壓縮全備份的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-06-06
判斷數(shù)據(jù)庫(kù)表是否存在以及修改表名的方法
本文為大家詳細(xì)介紹下如何判斷數(shù)據(jù)庫(kù)表是否存在以及修改表名,感興趣的朋友可以參考下,希望對(duì)大家有所幫助2013-09-09
SQL?Server使用T-SQL進(jìn)階之公用表表達(dá)式(CTE)
這篇文章介紹了SQL?Server中T-SQL的公用表表達(dá)式(CTE),文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-05-05
mssql server 數(shù)據(jù)庫(kù)附加不上解決辦法分享
在我們做開(kāi)發(fā)中經(jīng)常會(huì)對(duì)數(shù)據(jù)庫(kù)進(jìn)行備份,但有時(shí)假就會(huì)出現(xiàn)數(shù)據(jù)庫(kù)附加不上問(wèn)題,下面我們來(lái)看看一個(gè)朋友的解決辦法2011-09-09
SQL中LIKE和REGEXP簡(jiǎn)單對(duì)比分析
這篇文章主要介紹了SQL中LIKE和REGEXP簡(jiǎn)單對(duì)比,在MySQL中,LIKE和REGEXP都可以用于模式匹配,但是它們的語(yǔ)法、性能和應(yīng)用場(chǎng)景有所不同,通常來(lái)說(shuō),在簡(jiǎn)單的字符串模糊匹配場(chǎng)景下,使用LIKE更加高效;而在需要更復(fù)雜的模式匹配時(shí),使用REGEXP更加靈活2023-09-09

