hive中无法像postgresql和mysql一样使用in 和 not in 语句,类似的功能实现需要借助left join。
##in 语句的实现
in语句的实现需要借助LEFT SEMI JOIN 语句
原有使用in的语句为:
1 | SELECT a.key, a.value |
在Hive中需要修改为:
1 | SELECT a.key, a.val |
##not in 语句的实现
原有使用not in的语句为:
1 | SELECT a.key, a.value |
在hive中需要使用LEFT OUTER JOIN加一个判断来间接实现
1 | SELECT t1.key |