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

本文探讨了在SQL查询中使用JOIN时遇到的问题,即不支持非相等条件直接在ON子句中使用。文章提供了将非相等条件移至WHERE子句的解决方案,并提醒注意结果集的变化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原因:两个表join的时候,不支持两个表的字段 非相等 操作。
可以把不相等条件拿到 where语句中。

SELECT 
* 
FROM T1
LEFT JOIN T2                                                                              
on T1.id=T2.id and T1.name != T2.name

改写成

SELECT 
* 
FROM T1
LEFT JOIN T2                                                                              
on T1.id=T2.id 
where T1.name != T2.name

要注意 不等筛选 造成的结果数量减少

参考链接:
https://www.cnblogs.com/skyEva/p/7804589.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值