一.问题回顾
我们目前有表a和表b,两个表分别有一列,我们想查询出来的结果如表c,它同时包含了表a和表b的列;
二.解决方案
为了测试方便,我们直接使用oracle数据库的scott用户下的表emp和表dept;
表emp:
select rownum as rn1, t.* from scott.emp t
表dept:
select rownum as rn2, t.* from scott.dept t
with a as (select rownum as rn1, t.* from scott.emp t),b as (select rownum as rn2, t.* from scott.dept t)select a.*, b.* from a full join b on a.rn1 = b.rn2
三.归纳总结
大家可以发现,我们使用full join (全连接)来实现我们的需求;
3.1 基本语法
full join ... on ...
3.2 结果
全连接的查询结果是左外连接和右外连接的并集,即使一些记录关联不上,也能够把信息查询出来;
总结
以上所述是www.887551.com给大家介绍的oracle 将多张表中的列合并到一张表中,希望对大家有所帮助