「已注销」 2022-02-17 16:04 采纳率: 100%
浏览 39
已结题

mysql 树状图数据递归。升级版问题

img


mysql 树状图数据递归。升级版问题
可以的话直接上SQL噢,我知道可以用代码逻辑解决

  • 写回答

2条回答 默认 最新

  • DarkAthena ORACLE应用及数据库设计方案咨询师 2022-02-17 17:30
    关注
    --测试数据
    create table test_20220217 
    (id int,name VARCHAR(2),p_id int,money int);
    insert into test_20220217 values(1,'A',-1,10);
    insert into test_20220217 values(2,'B',1,15);
    insert into test_20220217 values(3,'C',1,12);
    insert into test_20220217 values(4,'D',2,11);
    insert into test_20220217 values(5,'E',2,13);
    insert into test_20220217 values(6,'F',3,14);
    insert into test_20220217 values(7,'G',4,20);
    insert into test_20220217 values(8,'H',4,31);
    insert into test_20220217 values(9,'I',5,55);
    
    --查询
    WITH RECURSIVE  cte as (select t.*,1 lvl,cast(null as  int) third_node from test_20220217 t where id=1
    union all 
    select t.*,lvl+1,case when lvl+1=3 then t.id when lvl+1>3 then cte.id end  from test_20220217 t,cte where cte.id=t.p_id
    )
    select third_node,sum(money) from cte where third_node is not null group by third_node
    

    查询效果

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 2月26日
  • 已采纳回答 2月18日
  • 创建了问题 2月17日

悬赏问题

  • ¥15 ansys fluent计算闪退
  • ¥15 有关wireshark抓包的问题
  • ¥15 需要写计算过程,不要写代码,求解答,数据都在图上
  • ¥15 向数据表用newid方式插入GUID问题
  • ¥15 multisim电路设计
  • ¥20 用keil,写代码解决两个问题,用库函数
  • ¥50 ID中开关量采样信号通道、以及程序流程的设计
  • ¥15 U-Mamba/nnunetv2固定随机数种子
  • ¥15 vba使用jmail发送邮件正文里面怎么加图片
  • ¥15 vb6.0如何向数据库中添加自动生成的字段数据。