Hive只支持在FROM子句中使用子查询,子查询必须有名字,并且列必须唯一:SELECT ... FROM(subquery) name ...
确认下是否一定要求列必须唯一?
建表语句:
create table tb_in_base
(
id bigint,
devid bigint,
devname string
) partitioned by (job_time bigint) row format delimited fields terminated by ',';
create table tb_in_up
(
id bigint,
devid bigint,
devname string
) partitioned by (job_time bigint) row format delimited fields terminated by ',';
场景一:单表子查询没有指定表别名
语句:select * from (select id,devid,job_time from tb_in_base) ;
执行过程:

本文详细分析了Hive中子查询的应用场景,包括必须指定子查询表别名、单表子查询、不同字段数量的子查询、UNION ALL操作以及聚合函数的使用。总结了Hive不支持UNION,但支持UNION ALL,且在外围查询中可以使用COUNT、SUM等聚合函数。同时,LEFT JOIN中也可使用聚合函数。
最低0.47元/天 解锁文章
6万+

被折叠的 条评论
为什么被折叠?



