hive中实现差集等操作

来源:互联网 发布:淘宝卖家如何代销上货 编辑:程序博客网 时间:2024/06/05 17:46

一般我们在使用hive进行处理两个数据集的使用经常会遇到处理两个数据集的求差集的问题

经过测试提供几个解决方案:

test1

a       1
b       2
c       1

test_2

a       22
c       55

1) 这里我们就要介绍一个hive的 关键字(left semi join)他解决的问题是:IN/EXISTS

例子1:

      select test_1.id, test_1.num from test_1 left semi join test_2 on (test_1.id = test_2.id);
            结果:

a       1
c       1

         2) left outer join 解决 A差B的问题:

例子2::

          select test_1.id, test_1.num from test_1 left outer join test_2 on (test_2.id = test_2.id) where test_2.num is null;
  结果:

b       2

0 0
原创粉丝点击