为了账号安全,请及时绑定邮箱和手机立即绑定

hive的巧用:查询两个表中不一样的数据

标签:
大数据

上个星期我在前辈的项目中发现了一个有趣的事情:
select a.* FROM A a left outer join B b on a.qq = b.qq
WHERE b.qq is null;
恩,很好。
WHERE b.qq is null;
.........
??
尼玛,你这不是查空得吗,查空的是干毛用啊?然后我就查前辈在数据库中存的sql语句,看看他是不是给我发错了。
查完之后我就嘿嘿了。前辈是谁啊,牛人大神啊,怎么可能会写错,然后我就问啊,这是什么意思啊,前辈说这是查A有B没有的数据。
什么意思呢?我也是想了好久才想明白,下面我来给大家说明一下,有错误建议指出~~
首先,我们先来看一下left join后是什么样的结果。我画了一张图,还请不要嫌弃。
图片描述

现在又A\B两张表,用left join 关联后就会变成这样:
图片描述

而在WHERE b.qq is null;后查的则是这个蓝框中的红框部分内的:
图片描述

大家有没有了解呢~~~
如果有错误欢迎纠正,欢迎补充~~~

点击查看更多内容
4人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消