hive表格取差集


hive 求兩個集合的差集

業務場景是這樣的,這里由兩個hive表格A和B

A的形式大概是這樣的:uid
B的形式大概是這樣的:uid

我想要得到存在A中但是不存在B中的uid

具體代碼如下

select a.uid from 
(select uid from tmp_zidali_500wan_fullinfo_new)a
left outer join
(select uid from temp_zidali_uid_num_maxvalue_rate)b
on a.uid=b.uid
where b.uid is null

在這里我要穿插一個非常重要的知識點,在A和Bjoin(不管是哪種join),在對結果表格取數據的時候,我們不能對結果表格進行一個()c這樣的操作。
錯誤代碼如下

select a.uid from (
(select uid from tmp_zidali_500wan_fullinfo_new)a
left outer join
(select uid from temp_zidali_uid_num_maxvalue_rate)b
on a.uid=b.uid
where b.uid is null
)c #這是錯誤的,不能這么做,為了這個錯誤,搞了三個小時去找這個錯誤代碼


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM