表1中只能通过编码体现父子关系,两个表关联查询数量(SL)怎么实现父节点自动求和。
表1:a
表2:b
select *,regexp_substr(DM,'[A-Za-z]+') as root,regexp_substr(DM,'[0-9]+') as node from a;
预期格式:
ID | DM | MC | ROOT | NODE |
---|---|---|---|---|
1561 | A | 前端 | A | null |
7865 | A1 | 前端 | A | 1 |
select *,regexp_substr(DM,'[A-Za-z]+') as root,regexp_substr(DM,'[0-9]+') as node from a
left join b
on a.ID = b.ID
select regexp_substr(DM,'[A-Za-z]+') as root,sum(b.SL) as SL
from a
left join b
on a.ID = b.ID
where regexp_substr(a.DM,'[0-9]+') is not null
group by regexp_substr(DM,'[A-Za-z]+')
ps:没有oracle 纯手打 没有实践 不知道对不对
2个表是通过那个字段进行关联呢?没发现有关联字段呢?2个表的ID相同吗?
select id,sum(sl) from 表2 group by ID