今天在用Hive处理问题的时候碰到了差集操作,故整理如下,仅供参考~
1)新建两个测试表a,b。a中的数据为1,2,3,4,5。b中的数据为1,2,3。
2)left semi join解决的是IN/EXISTS的问题
select a.id from a left semi join b on (a.id = b.id);
结果是:1,2,3
3)left outer join解决的是a差b的问题
select a.id from a left outer join b on (a.id = b.id) where b.id is null;
结果是:4,5