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

2023年 4月 20日 36.8k 0

SQL 获取所有上级的实现方法 说明: (1)可以做成一个函数,直接调用即可; (2) M0Org 是数据库存在的表 ,M0OrgPID 为目标表,OrgID为ID字段,PID为上级ID字段 DECLARE @OrgID NVARCHAR(36)= '00000000

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;

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

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论