hive的巧用:查詢兩個表中不一樣的數據

一個有趣的SQL:


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;
.........
??
這不是查空得嗎,查空的是幹毛用啊?

這是查A有B沒有的數據。
什麼意思呢?
首先,我們先來看一下 left join 後是什麼樣的結果。畫了一張圖,還請不要嫌棄

現在有 A \ B 兩張表,用 left join 關聯後就會變成這樣:

而在WHERE b.qq is null; 查出的則是這個藍框中的紅框部分內的:

 

懂了嗎  大佬就是大佬 

end

 

轉載:https://www.imooc.com/article/17676 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章