mysql查询父节点

这篇博客介绍了如何在MySQL中查询父级节点及其层级。提供了两种查询方法:一是查询单个父级节点,二是获取所有父级节点及其对应的层级数。示例查询涉及到了sys_dept表,并使用了变量和递归查询来实现。
摘要由CSDN通过智能技术生成

1.查询父级节点

SELECT T1.parent_id
FROM ( 
    SELECT 
        @r AS _id, 
        (SELECT @r := parent_id FROM sys_dept WHERE dept_id = _id) AS parent_id, 
        @l := @l + 1 AS lvl 
    FROM 
        (SELECT @r := 275, @l := 0) vars, 
        sys_dept h 
    WHERE @r <> 0) T1 
 
ORDER BY T1.lvl DESC 


2.所有父级点及等级数

    SELECT T1.parent_id as parent_id
        FROM (
        SELECT
        @r AS _id,
        (SELECT @r := parent_id FROM sys_dept WHERE dept_id = _id) AS parent_id,
        @l := @l + 1 AS lvl
        FROM
        (SELECT @r := #{deptId}, @l := 0) vars,
        sys_dept h
        WHERE @r <> 0) T1

        ORDER BY T1.lvl DESC

3.比较有用

    SELECT GROUP_CONCAT(dist
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值