连接来自多个不相关的1行结果集的列(使用group by)

vuktfyat  于 2021-06-28  发布在  Hive
关注(0)|答案(1)|浏览(307)

我在这里发现了一个非常相似的问题,除此之外,我想做的就是按日期分组。每个子查询中都有一个日期列。
连接来自多个不相关的1行结果集的列
每个子查询都将包含完全相同的日期范围。我试过在每个子查询和外部查询中放置groupby,但似乎无法为每个日期组合每个子查询。我在配置单元中使用这个查询,但是我相信任何ansisql都可以在这里工作。不过,别引用我的话。我的方案似乎是一个微小的变化,在我张贴的链接中找到的答案,但我似乎不能使它工作。
以下是我在上面所附链接发布的一个查询:

select A, B, C, D 
from ( SELECT SUM(A) as A, SUM(B) as B FROM X ) as U 
CROSS JOIN ( SELECT SUM(C) as C, SUM(D) as D FROM Y ) as V

当每个子查询都有一个日期列时,如何向其中添加分组依据?还是有更好的方法达到同样的效果?

ou6hu8tu

ou6hu8tu1#

这就是你想要的吗?

select u.dte, A, B, C, D 
from (select dte, SUM(A) as A, SUM(B) as B
      from X
      group by dte
     ) u join
     (select dte, SUM(C) as C, SUM(D) as D 
      from Y
      group by dte
     ) v
     on u.dte = v.dte;

相关问题