之前写了一道题目:题目4:计算设备的所有零件数量
大概的意思是这样 有张关系表 ,里面存放了房间内物品的种类和物品之间组成的关系及数量,比如房间内有两张桌子,三把椅子,每张桌子由五个木头块组成,最后让求的是这个房间内每种物品的数量,今天我把答案给大家写一下,不知道和你们想的一样不~
写之前啰嗦两句,本来我都忘记这个题目了。结果今天有个同事正好碰到和这个题目一摸一样的场景,就想起来这个题了,我是用CTE做的,先放数据代码
with t1 as
(
select '房间' as product,'桌子' as fitting,2 as num from dual
union all
select '房间','椅子',3 from dual
union all
select '房间','镜子',3 from dual
union all
select '桌子','木头块',5 from dual
union all
select '镜子','木头块',5 from dual
union all
select '桌子','螺丝',6 from dual
union all
select '桌子','螺丝帽',8 from dual
union all
select '椅子','整个木头',6 from dual
union all
select '椅子','螺丝',2 from dual
union all
select '整个木头','木头块',3 from dual
union all
select '木头块','小木头块',2 from dual
union all
select '小铁片','钉子',2 from dual
union all
select '小铁片','铝片',3 from dual
union all
select '螺丝','大铁片',10 from dual
union all
select '螺丝','中铁片',10 from dual
union all
select '螺丝','小铁片',10 from dual
)
复制
下面是答案代码:
cte(product,fitting,num) as
(
select product,fitting ,num from t1 where product = '房间'
union all
select t.product,t.fitting,t.num*c.num as num
from t1 t inner join cte c on c.fitting = t.product
)
select fitting,sum(num) from cte group by fitting
复制
运行结果:
这里我们求出来的是所有的物品的数量,但是我同事那里是只要最后一层的数量。就是组成物品的最小单位的数量。比如钉子,铝片这些。我当时是用子节点的所有物品minus了一下父节点的所有物品,判断出了哪些是最小种类,但是感觉性能不是很好,在这里大家有更好的想法可以直接和我联系,感谢大家~
关于cte不懂的同学,也可以联系我,大家一起学习探讨!
刚开始编写文章,很多地方都有不足,希望以后可以为大家贡献出更好的文章,谢谢大家!
没有关注的也可以关注下公众号~再次感谢
最后修改时间:2021-04-19 17:17:05
文章转载自SQL大数据开发,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
2025年4月中国数据库流行度排行榜:OB高分复登顶,崖山稳驭撼十强
墨天轮编辑部
1864次阅读
2025-04-09 15:33:27
2025年3月国产数据库大事记
墨天轮编辑部
866次阅读
2025-04-03 15:21:16
2025年3月国产数据库中标情况一览:TDSQL大单622万、GaussDB大单581万……
通讯员
602次阅读
2025-04-10 15:35:48
征文大赛 |「码」上数据库—— KWDB 2025 创作者计划启动
KaiwuDB
495次阅读
2025-04-01 20:42:12
数据库,没有关税却有壁垒
多明戈教你玩狼人杀
485次阅读
2025-04-11 09:38:42
国产数据库需要扩大场景覆盖面才能在竞争中更有优势
白鳝的洞穴
463次阅读
2025-04-14 09:40:20
最近我为什么不写评论国产数据库的文章了
白鳝的洞穴
403次阅读
2025-04-07 09:44:54
天津市政府数据库框采结果公布!
通讯员
359次阅读
2025-04-10 12:32:35
【活动】分享你的压箱底干货文档,三篇解锁进阶奖励!
墨天轮编辑部
353次阅读
2025-04-17 17:02:24
优炫数据库成功入围新疆维吾尔自治区行政事业单位数据库2025年框架协议采购!
优炫软件
336次阅读
2025-04-18 10:01:22