m0_56789428 2023-08-09 21:34 采纳率: 94.9%
浏览 5
已结题

mysql查询树型结构表,前三级数据

mysql查询树型结构表,前三级数据
树型表 主键id 名字name 父级id parent_uuid
SELECT bs.id as id,bs.name as name,bs.parent_uuid as parent_id from bs;
第一个数据的父级id是 root
求前三级数据有哪些?
求所有的第四级数据有哪些?
我用了inner join 内连接 但是写的太长了 不知道有没有更好的方法?

  • 写回答

3条回答 默认 最新

  • 喝茶品人生 2023-08-10 14:19
    关注

    用递归啊,你的需求说出来不就是常用思路了嘛,比如

    WITH Cte AS (
      SELECT id, name, parent_uuid, 1 AS level
      FROM bs
      WHERE parent_uuid = 'root' 
      UNION ALL
      SELECT bs.id, bs.name, bs.parent_uuid, tree.level + 1
      FROM bs
      INNER JOIN tree ON bs.parent_uuid = tree.id
    )
    SELECT id, name, parent_uuid
    FROM Cte
    WHERE level <= 3;
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 8月19日
  • 已采纳回答 8月11日
  • 修改了问题 8月10日
  • 创建了问题 8月9日

悬赏问题

  • ¥15 没输出运行不了什么问题
  • ¥20 输入import torch显示Intel MKL FATAL ERROR,系统驱动1%,: Cannot load mkl_intel_thread.dll.
  • ¥15 点云密度大则包围盒小
  • ¥15 nginx使用nfs进行服务器的数据共享
  • ¥15 C#i编程中so-ir-192编码的字符集转码UTF8问题
  • ¥15 51嵌入式入门按键小项目
  • ¥30 海外项目,如何降低Google Map接口费用?
  • ¥15 fluentmeshing
  • ¥15 手机/平板的浏览器里如何实现类似荧光笔的效果
  • ¥15 盘古气象大模型调用(python)