加入蜂巢的顺序

时间:2016-08-09 18:45:11

标签: hive hiveql

我的查询涉及left join后跟join。我想确保首先完成left joinleft join来自join我的查询之前,这够了吗?这就是联接的样子

select * from
  (select *....) A
left join
  (select *...) B
on A.a = B.a
left join
  C
on A.f = C.f

1 个答案:

答案 0 :(得分:0)

我在代码中看不到JOIN,只看到两个LEFT JOIN语句。

但是,如果您有这样的事情:

select * from
  (select *....) A
left join
  (select *...) B
on A.a = B.a
join
  C
on A.f = C.f

并且您想确保首先执行LEFT JOIN,您可以将此LEFT JOIN移动到子查询:

select * 
from (
  select * from ( 
    (select *....) A
    left join
    (select *...) B
    on A.a = B.a
  )
) D
join
  C
on D.f = C.f