SQL获取所有上级的如何实现方法

泥土的味道是苦涩的,海水的味道是苦咸的,树林中清新的空气也有着一丝苦津津的味道。这苦的大自然,孕育了人们交织着各种苦痛的心灵。广袤的土地,浩瀚的海洋,辽阔的天空,构成了我们这个世界。

SQL 获取所有上级的实现方法

说明:

(1)可以做成一个函数,直接调用即可;

(2) M0Org 是数据库存在的表 ,M0OrgPID 为目标表,OrgID为ID字段,PID为上级ID字段

DECLARE @OrgID NVARCHAR(36)= '00000000-0000-0000-00000002205223459'; 
 
  --获取当前机构的所有上级 放入M0OrgPID 
   WITH  M0OrgPID 
        AS ( SELECT  *, 0 AS lvl 
          FROM   M0Org 
          WHERE  OrgID = @OrgID 
          UNION ALL 
          SELECT  d.*, lvl + 1 
          FROM   M0OrgPID c 
          INNER JOIN M0Org d ON c.PID = d.OrgID ) 
 
     SELECT * FROM  M0OrgPID; 

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

以上就是SQL获取所有上级的如何实现方法。有缺陷的产品等于废品。更多关于SQL获取所有上级的如何实现方法请关注haodaima.com其它相关文章!

您可能有感兴趣的文章
如何利用SQL Server触发器如何实现表的历史修改痕迹记录

SQL server高并发生成唯一订单号的方法如何实现

sqlserver查询去掉重复数据的如何实现

sqlserver 如何实现收缩数据库日志操作

sqlserver添加sa用户和密码的如何实现