HIVE检查表1中的数据,表2中没有

时间:2013-03-12 11:02:07

标签: sql hive

我希望创建一个HIVE SQL查询来查找表1中表2中没有的所有值。我知道我需要使用连接但是我无法弄清楚如何在这种情况下实现它。 ..

谢谢, 詹姆斯

例如:

Table1

url                  number
xe.com               5
google.com           2
ebay.co.uk           6

Table2

url                  visits
facebook.com         8
google.com           4
ebay.co.uk           15

因此,例如,查询应返回Table2中存在于表2中的所有值,即

url                  number         visits
google.com           2              4
ebay.co.uk           6              15

1 个答案:

答案 0 :(得分:15)

LEFT JOIN将返回Table1的所有行,无论是否匹配。如果不匹配,Table2中的列将具有值NULL - 这些是您想要的行:

SELECT Table1.url, Table1.number
FROM Table1
LEFT OUTER JOIN Table2 ON Table1.url = Table2.url
WHERE Table2.url IS NULL