亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

復(fù)制指定節(jié)點(diǎn)及其所有子節(jié)點(diǎn)到指定結(jié)點(diǎn)的處理示

系統(tǒng) 1977 0

CREATE TABLE tb(ID int,PID int,Name nvarchar(10))
INSERT tb SELECT 1,NULL,'山東省'
UNION ALL SELECT 2,1?? ,'煙臺(tái)市'
UNION ALL SELECT 4,2?? ,'招遠(yuǎn)市'
UNION ALL SELECT 3,1?? ,'青島市'
UNION ALL SELECT 5,NULL,'四會(huì)市'
UNION ALL SELECT 6,5?? ,'清遠(yuǎn)市'
UNION ALL SELECT 7,6?? ,'小分市'
GO

--節(jié)點(diǎn)復(fù)制處理函數(shù)
CREATE FUNCTION f_CopyNode(
@ID???? int,??????? --復(fù)制此節(jié)點(diǎn)下的所有子節(jié)點(diǎn)
@PID??? int,?????? --將@ID下的所有子節(jié)點(diǎn)復(fù)制到此節(jié)點(diǎn)下面
@NewID? int=NULL --新編碼的開始值,如果指定為NULL,則為表中的最大編碼+1
)RETURNS @t TABLE(OldID int,ID int,PID int,Level int)
AS
BEGIN
?IF @NewID IS NULL
??SELECT @NewID=COUNT(*) FROM TB
?ELSE
??SET @NewID=@NewID-1
?DECLARE @Level int
?SET @Level=1
?INSERT @t(OldID,PID,Level) SELECT ID,@PID,@Level
?FROM tb
?WHERE PID=@ID
?WHILE @@ROWCOUNT>0
?BEGIN
??UPDATE @t SET @NewID=@NewID+1,ID=@NewID
??WHERE Level=@Level
??SET @Level=@Level+1
??INSERT @t(OldID,PID,Level) SELECT a.ID,b.ID,@Level
??FROM tb a,@t b
??WHERE a.PID=b.OldID
???AND b.Level=@Level-1
?END
?RETURN
END
GO

--調(diào)用函數(shù)將節(jié)點(diǎn)1下面的所有子節(jié)點(diǎn)復(fù)制到節(jié)點(diǎn)5下面
INSERT tb(ID,PID,Name)
SELECT a.ID,a.PID,b.Name
FROM f_CopyNode(1,5,DEFAULT) a,tb b
WHERE a.OldID=b.ID
SELECT * FROM tb
/*--結(jié)果
ID????????? PID???????? Name??????
---------------- ----------------- ----------
1?????????? NULL??????? 山東省
2?????????? 1?????????? 煙臺(tái)市
4?????????? 2?????????? 招遠(yuǎn)市
3?????????? 1?????????? 青島市
5?????????? NULL??????? 四會(huì)市
6?????????? 5?????????? 清遠(yuǎn)市
7?????????? 6?????????? 小分市
8?????????? 5?????????? 煙臺(tái)市
9?????????? 5?????????? 青島市
10????????? 8?????????? 招遠(yuǎn)市
--*/

復(fù)制指定節(jié)點(diǎn)及其所有子節(jié)點(diǎn)到指定結(jié)點(diǎn)的處理示例(借鑒方式排序法).sql


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 国产成人精品日本亚洲语音2 | 91成人午夜精品福利院在线观看 | 国产精品福利视频 | 五月国产综合视频在线观看 | 久99久爱精品免费观看视频 | 四虎播放 | 91在线看片 | 婷婷丁香亚洲 | 国产精品麻豆久久久 | 深夜福利国产 | 天天夜碰日日摸日日澡 | 久久精品国产久精国产果冻传媒 | 色偷偷青青草原在线视频 | 久久综合五月天 | 91精品久久久 | 久久草在线 | 久久免费视频在线 | 亚洲精品图区 | 久久亚洲国产成人影院 | 欧美一级xxxxⅹ毛片 | 四虎永久在线精品国产馆v视影院 | 免费看成人频视在线视频 | 国产小视频91| 天天操狠狠操夜夜操 | 国产21区 | 久久天堂夜夜一本婷婷麻豆 | 久色阁| 一级无遮挡理论片 | 波多野结衣二区 | 中文字幕一区二区三 | 一本色道久久综合亚洲精品 | 在线免费观看a视频 | 天天综合在线视频 | 国产永久在线观看 | 在线免费观看毛片 | 亚洲精品tv久久久久久久久 | 97香蕉久久夜色精品国产 | 免费观看黄色的网站 | 国产成人亚洲精品久久 | 国产精品久久久久一区二区三区 | 亚洲香蕉在线视频 |