【发布时间】:2019-11-29 13:29:05
【问题描述】:
在 HIVE 中,我想将 2 个表(都有 2 列)与一个公共列(时间)合并。合并后的表将有 3 列(common + X + Y)。
表 A
| Time | X |
|------ |--- |
| 1 | 2 |
| 2 | 1 |
| 3 | 5 |
表 B
| Time | Y |
|------ |--- |
| 2 | 1 |
| 8 | 6 |
合并表:
| Time | X | Y |
|------ |--- |--- |
| 1 | 2 | 0 |
| 2 | 1 | 1 |
| 3 | 5 | 0 |
| 8 | 0 | 6 |
我试过UNION ALL 和OUTER JOIN,OUTER JOIN 有效,但在时间列中给我null 结果。
使用UNION ALL:
CREATE TABLE m AS SELECT * FROM A UNION ALL select * FROM B;
我得到以下信息:
SemanticException 1:89 联合双方的架构应该匹配。
【问题讨论】: