我有很多代码,这个代码在另一个表中有很多孩子
DECLARE @value VARCHAR(150);
SET @value = '4105';
SELECT VALUE Parent
INTO ##k
FROM dbo.Split (',',@value)
SELECT DISTINCT lastlevel
INTO ##tmp_getAllLastLevel
FROM [DWH-INF].[center].[dbo].[IFIRView_NeginTitleTotal]
WHERE lastlevel IN (SELECT parent FROM ##k)
OR level1 IN (SELECT parent FROM ##k)
OR level2 IN (SELECT parent FROM ##k)
OR level3 IN (SELECT parent FROM ##k)
OR level4 IN (SELECT parent FROM ##k)
OR level5 IN (SELECT parent FROM ##k)
OR level6 IN (SELECT parent FROM ##k)
OR level7 IN (SELECT parent FROM ##k)
OR level8 IN (SELECT parent FROM ##k)
此代码没问题,可以获取父 ID = 4105 的所有子项。
但我有很多父母喜欢
SET @value = '4105,4106,2034,2055';
如何将所有最后一级和父级插入到一张像这张表的表中
parent lastlevel
------------------------------
4105 1273
4105 1275
4105 1279
4106 1288
4106 1292
2055 1073
感谢您阅读我的问题
你可以像这段代码一样使用内部连接
select tb1.Parent,tb2.lastlevel into ##tmp_getAllLastLevel from ##k
tb1 inner join [DWH-INF].[center].[dbo].[IFIRView_NeginTitleTotal] tb2 on
tb1.Parent=tb2.lastlevel or tb1.Parent=tb2.level1 or
tb1.Parent=tb2.level2 or tb1.Parent=tb2.level3 or tb1.Parent=tb2.level4 or
tb1.Parent=tb2.level5 or tb1.Parent=tb2.level6 or tb1.Parent=tb2.level7
or tb1.Parent=tb2.level8
并获取所有父级和最后一级
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句