Oracle:合并具有不同列的两个表

标签 oracle join merge union database-table

这是表 1:

col_1  col_2  date_1
-----  -----  ------
1      3      2016
2      4      2015

这是表 2:

col_3  col_4  date_2
-----  -----  ------
5      8      2014
6      9      2012

我想要这样的结果:

col_1  col_2  col_3  col_4  date_1  date_2
-----  -----  -----  -----  ------  ------
1      3      NULL   NULL   2016    NULL
2      4      NULL   NULL   2015    NULL
NULL   NULL   5      8      NULL    2014
NULL   NULL   6      9      NULL    2012

有什么解决办法吗?

最佳答案

使用 Union AllNull 作为不同的列:

SELECT col_1, col_2, NULL as col_3, NULL as col_4,
       date_1, NULL as date_2
FROM table_1

Union All

SELECT NULL, NULL, col_3, col_4, NULL, date_2
FROM table_2

关于Oracle:合并具有不同列的两个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40378914/

相关文章:

svn - 有来自一个 SVN 项目的 2 个产品 - 如何只为一个产品保留某些更改?

jQuery : Merge column of table

oracle - coldfusion v 10 std无法通过jdbc oci驱动程序连接到oracle

java - 有没有办法估计从java到Oracle的写入带宽

mysql - 如何通过 sql 对多对多的结果进行分组,而不是使用 php 来进行分组?

php - SQL join into join 创建好数组

MySql - JOIN 查询上的全表扫描

c# - 使用 C# 合并新旧 XML 文件

oracle - Oracle 中如何检索最后插入的记录

oracle - 程序中出现奇怪错误 "Ora-01001 Invalid cursor"