我编写了一个简单的遗漏连接hiveql select * from a left outer join b on (a.f1=b.f1 and a.f2=b.f2) 以上查询结果的总数为 798,608 . 但是,表a中的记录总数是 780,499 ,不匹配。我试图找到所有只存在于左连接结果中而不存在于表a中的记录;结果返回空白。我甚至尝试创建两个小表(a'和b'),其中包含一些记录,左连接结果的计数与表a'记录的计数匹配,如预期的那样。什么会导致结果不一致?
select * from a left outer join b on (a.f1=b.f1 and a.f2=b.f2)
798,608
780,499
ndasle7k1#
多亏了大卫·李。表b中有1对多的情况。问题解决了。
1条答案
按热度按时间ndasle7k1#
多亏了大卫·李。表b中有1对多的情况。问题解决了。