zoukankan      html  css  js  c++  java
  • mysql 部门查询 查询所有子级,父级id

    这里提供2个个人觉得比较常用的sql

    一、 查询所有子级(不包含本身)

    @Select({"<script>",
                "select id from (" +
                        " select t1.id," +
                        " if(find_in_set(parent_id, @pids) > 0, @pids := concat(@pids, ',', id), 0) as ischild" +
                        " from (" +
                        " select id,parent_id from c_core_org t order by parent_id, id" +
                        " ) t1," +
                        " (select @pids := #{orgId}) t2" +
                        " ) t3 where ischild != 0",
                "</script>"})

    二、查询所有父级(包含本身)

    "SELECT T1._id groupID" +
                        " FROM (" +
                        " SELECT" +
                        " @r AS _id," +
                        " (SELECT @r := parent_id FROM c_core_org WHERE id = _id) AS parent_id," +
                        " @l := @l + 1 AS lvl FROM (SELECT @r := #{orgId}, @l := 0) vars," +
                        " c_core_org h WHERE @r != '0'" +
                        " ) T1",

    以上2个查询id为我的主键 , c_core_org 是我的表名,parent_id 是我的父id字段

    分享到此结束,

    感谢观看

    如有错误或不足麻烦大佬提出,我及时改正

    谢谢!

    2021-09-26 15:46:50




  • 相关阅读:
    集合及特殊集合arrayList
    二维数组、多维数组
    一维数组

    for循坏的穷举与迭代,while、do while循环
    1.兔子生兔子问题2.打印菱形3.求100以内质数的和
    for循环嵌套
    复习题
    循环语句
    分支语句
  • 原文地址:https://www.cnblogs.com/-ccj/p/15338472.html
Copyright © 2011-2022 走看看