怎么把SQL多个表关联合并成一个表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么把SQL多个表关联合并成一个表相关的知识,希望对你有一定的参考价值。

怎么把表1,表2,表3 合并成 表4
表1
ID qty1
1 10
2 10
表2
ID qty2
2 10
3 10
表3
ID qty3
4 10
合并后=表4
ID qty1 qty2 qty3
1 10 0 0
2 10 10 0
3 0 10 0
4 0 0 10

用union all+group by。多少ID都没关系吧,除非你说的是有上千个表。。。

select ID,sum(qty1) qty1,sum(qty2) qty2,sum(qty3) qty3 (
select ID,qty1,0 qty2,0 qty3 from  表1 union all
select ID,0 qty1,qty2,0 qty3 from  表2 union all
select ID,0 qty1,0 qty2,qty3 from  表3 ) as t1
group by ID

参考技术A select t1.id,t1.qty1,t2,qty2,t3.qty3 from 表一 t1 join 表二 t2 on t1.id=t2.id join 表三 t3 on t1.id=t3.id

参考技术B select
a.qty1,
case when b.qty2 is null then 0 else b.bqty2 end,
case when c.qty3 is null then 0 else c.bqty3 end

from 表1 as a
left join 表2 as b on a.id=b.id

left join 表3 as c on a.id=c.id追问

用left join,qty3和 qty4的 id会显示不出来的。有没有其他办法呢

用left join,qty3和 qty4的 id会显示不出来的。有没有其他办法呢

追答

看你的给的例子,他们的ID是有外键关系的。要显示出来你就在select里面加上a.id,b.id,c.id 就好了呗

怎么把多个excel转成一个pdf

把多个Excel转成PDF,个人总结了有两种办法可能实现。
第一种办法就是先把多个Excel合成到一个Excel工作表中,利用另存为的方式把Excel存为PDF格式。
第二种办法就是先把多个Excel分别另存为PDF,然后通过PDF的编辑进行把这些Excel转换的PDF进行合并。
参考技术A

可以先用图1的office转pdf功能,将多个excel转换成多个PDF;再用图2这个合并功能,就是把多个PDF合并成一个。

图1:

图2:

以上是关于怎么把SQL多个表关联合并成一个表的主要内容,如果未能解决你的问题,请参考以下文章

SQL怎样合并显示两个没有关联的表

excel怎么把2个表合一起吗

SQL多张表如何合并成一张报表?

SQL怎么列合并

sql 多表关联查询

SQL怎么把多条数据合并成一条数据?