如何使用HIVE HQL从表A中选择已删除的记录与表B.

时间:2015-11-16 05:09:00

标签: hadoop join hive

我有Table_A和Table_B,数据由partition_id

分区

Table_A有650条记录,如

COL-1a,COL-1b,COL-1c,partition_id = 20151015

COL-2a,COL-2b,COL-2c,partition_id = 20151015

...

...

...

COL-650a,COL-650b,COL-650c,partition_id = 20151015

Table_B具有相同的记录,但只有500(删除150条记录)

COL-1a,COL-1b,COL-1c,partition_id = 20151015

COL-2a,COL-2b,COL-2c,partition_id = 20151015

...

...

...

COL-500a,COL-500b,COL-500c,partition_id = 20151015

在这里,我想要一个HIVE查询来查找/选择Table_A中的记录,这些记录在Table_B中被删除/丢失,其中 - 两个表的partition_id应该相同。

-D V N

2 个答案:

答案 0 :(得分:1)

您想要做的事情可以通过LEFT JOIN完成:

SELECT x
FROM Table_A
LEFT JOIN Table_B
ON Table_A.x = Table_B.x
WHERE Table_B.x IS NULL

答案 1 :(得分:1)

select * from Table_A except select * form Table_B