首页 > 其他 > 详细

MSSQ 树型结构数据 循环操作

时间:2020-07-03 10:52:33      阅读:59      评论:0      收藏:0      [点我收藏+]
   DECLARE @dict TABLE (value  VARCHAR(50),[level] int )
   DECLARE @TYPEID NVARCHAR(50) 
   DECLARE @LEVEL INT =0   
   INSERT @dict     
   SELECT  TYPEID,@LEVEL FROM DBO.BAS_WORKSHOP WHERE WID=@WID  --参数值 
   WHILE EXISTS(SELECT * FROM dbo.BAS_WORKSHOP where parid in (select value from @dict where [level]=@LEVEL ))
   BEGIN
      set @LEVEL+=1; 
      insert into @dict(value,[level])
      select typeid,@LEVEL from dbo.BAS_WORKSHOP where parid in (select value from  @dict where  [level]=@LEVEL-1 )
   END  
   UPDATE DBO.BAS_WORKSHOP SET DELETED=1 WHERE TYPEID IN (select value from @dict where [level]>0) 
技术分享图片
if exists (select * from dbo.sysobjects where id = object_id(N[dbo].[GP_DoStartStopWorkshop]) and OBJECTPROPERTY(id, NIsProcedure) = 1)
drop procedure [dbo].GP_DoStartStopWorkshop
判断存储过程
Bas_Workshop 主要数据列

WID

TypeID(ID) DELETED ParID(PID)
27  00000  0 root
79  00001  0 00000
80  00002  0 00000
81  0000100001  0 00001

MSSQ 树型结构数据 循环操作

原文:https://www.cnblogs.com/valeb/p/13228411.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!