首页 > 其他 > 详细

初始化机构path

时间:2020-12-18 10:22:32      阅读:17      评论:0      收藏:0      [点我收藏+]

代码如下:

IF OBJECT_ID(tempdb..#testOU) IS NOT NULL DROP TABLE #testOU;
WITH oulist as
(
select CAST(0001 AS VARCHAR(max)) AS codes,a.* from dbo.Org a WHERE a.PlatformOrgId = 00000000000000000000000000000001 
    union all
select 
w.codes
+  cast( ROW_NUMBER() over (order by a.sort) /1000 as  varchar(max)) 
+  cast( ROW_NUMBER() over (order by a.sort) % 1000 /100 as  varchar(max))
+  cast( ROW_NUMBER() over (order by a.sort) %1000 % 100 /10 as  varchar(max)) 
+  cast( ROW_NUMBER() over (order by a.sort) %1000 % 100 %10 as  varchar(max)) 

codes,
 a.* from  dbo.Org a 
    join oulist w on a.ParentID = w.PlatformOrgId 
)
SELECT *,len(Codes)/4-1 AS oLevel into #testOU FROM oulist order by code

update dbo.Org SET Org.OrgPath = b.codes from   dbo.Org o inner join #testOU  b on o.PlatformOrgId = b.PlatformOrgId 

IF OBJECT_ID(tempdb..#testOU) IS NOT NULL DROP TABLE #testOU;

 

初始化机构path

原文:https://www.cnblogs.com/no27/p/14153472.html

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