两个list合并为一个,缺少的填0,并按其中一个的顺序排列

本文介绍了一种使用CTE(公用表表达式)进行复杂数据聚合的方法。通过递归查询和全连接操作实现对组织架构和统计数据的高效处理。适用于需要处理多层次嵌套数据结构的场景。

with cte as

(

     select id,1 level,name from ts_dictionary where parentid=''63"

     union all

     select g.id,level +1,g.name from ts_dictionary g  inner join cte 

     on g.parentid=cte.id

)

select

        isnull(A.depart,B.name) depart,

        isnull(A.count,0) count

from 

(

     select d.name as depart ,count(d.name) as count from ts_data k

     left join

     ts_dictionary d on k.depart=d.id group by d.name

)   A     full join 

     (select name from cte)  B 

     on  A.depart=B.name order by B.name

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值