HIVE 多个无关的查询单行结果合并成一行的方案
最近在做一个HIVE统计需求,遇到的场景需要把多个不同的单行结果合成一行,首先已经使用WITH ....AS 作出几个中间结果表:
with A as (
),B as (
),C as(
)
方案有如下几个:
1、select A.* ,B.* ,C.* from A,B,C
2、人为的增加一个关联,比如是按月汇总,可以各个内存表中增加同一个关联列,然后通过left jion等关联成一行
3、使用left join 或 join on 等在on后面接为true的表达式,如on 1=1(需先设置非严格模式:set hive.mapred.mode=nonstrict);
备注:
通过直接select (),(),()的子查询 的方式,不可行