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;

猜你喜欢

转载自blog.csdn.net/u013816709/article/details/61923130
今日推荐