两个表之间不存在sql sum项

2cmtqfgy  于 2021-07-26  发布在  Java
关注(0)|答案(2)|浏览(230)

我有3个表,表1、表2和表3都有列 Itemcode 以及 Qty .
我想从所有具有sum qty的表中编写一个查询all itemcode,但有些项与两个表都不匹配。
当我试图用

sum(tn2.sales + via1.sales + bcg.sales)

我得到的是空白值。

33qvvth1

33qvvth11#

尝试创建表的“视图”,并根据您的查询汇总值

w51jfk4q

w51jfk4q2#

可能有一个更优雅的解决方案,但这里有一个快速的方法。用并集构建三个select,然后将子查询求和。

select all_items.itemcode, all_items.Qty, sum(all_items.sales) from 
  (Select itemcode, Qty, sum(sales)as sales from tn2 group by itemcode
  union
  Select itemcode, Qty, sum(sales) as sales from via1 group by itemcode
  union
  Select itemcode, Qty, sum(sales)as sales from bcg group by itemcode) all_items
group by all_items.itemcode, all_items.Qty

相关问题