hive报错:Both left and right aliases encountered in JOIN

错误原因:两个表join的时候,不支持两个表的字段的 非相等 操作。

解决办法:

1、把不相等条件拿到where语句中

select ... from
class_order t1
left join class_order_refund t2 on t1.orderdate>t2.orderdate

可以改写成

select ... from
class_order t1
left join class_order_refund t2
where t1.orderdate>t2.orderdate

2、如果第一中方法不适用,可以在select字段中判断

select
...
if(t1.orderdate>t2.orderdate,0,1) as is_refund
...
from
class_order t1
left join class_order_refund t2 on t1.orderdate>t2.orderdate

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券