sql - 有没有办法在 hive sql 中使用 OUTER UNION CORR?
问题描述
我正在尝试使用 UNION 逻辑从四个表中创建一个表,但是所有表都有一个不同的列。
PROC SQL;
create table output_table
select cl1, cl2, cl3 from tb1
OUTER UNION CORR
select cl1, cl2, cl4 from tbl2
OUTER UNION CORR
select cl1,cl2, cl5 from tbl3
OUTER UNION CORR
select cl1, cl2, cl6 from tbl4;
quit;
在此查询中,输出表包含所有列 (cl1,cl2,cl3,cl4,cl5,cl6)。
所以我的问题是有什么方法可以在 Hive SQL 中获取整个列。
create table output_table
select cl1, cl2, cl3 from tb1
UNION ALL
select cl1, cl2, cl4 from tbl2
UNION ALL
select cl1,cl2, cl5 from tbl3
UNION ALL
select cl1, cl2, cl6 from tbl4;
如果我这样使用,输出表上的列仅包含第一个表中的列。(cl1,cl2,cl3)
但我需要在我的输出中获取所有列。
解决方案
这是你想要的吗?
select cl1, cl2, cl3, null as cl4, null as cl5, null as cl6 from tb1
union all
select cl1, cl2, null, cl4, null, null from tbl2
union all
select cl1, cl2, null, null, cl5, null from tbl3
union all
select cl1, cl2, null, null, null, cl6 from tbl4;
推荐阅读
- android - 我可以删除软键盘中的点(。)吗?
- image - 是否有另一种方法可以从 Codename One 项目中删除未使用的图像?
- python - OSRS 钓鱼计算器“if...elif”块重复列表中每个项目的结果
- office-ui-fabric - Office UI 在 SearchBox 中执行搜索
- angular9 - 升级到 Angular9,组件规范中未检测到节点模块
- python - os.DirEntry.is_dir() 和 os.DirEntry.is_file() 都可以为 os.scandir() 中的对象返回 False 吗?
- javascript - .findbycredentials 无响应
- java - 是否有来自 numpy 的向量化的 Java 等价物?
- javascript - 如何在Javascript中拆分并获取数组中的键值对对象
- node.js - TypeError [ERR_INVALID_ARG_TYPE]:“路径”参数必须是 React Native 中的字符串类型