2012-06-04 5 views
7

Как я делаю КРОМЕ пункта (например, SQL) в улей QLHive QL За исключением пункта

У меня есть 2 таблицы, а каждая таблица представляет собой столбец уникальных идентификаторов, я хочу, чтобы найти список идентификаторов, которые являются только в таблице 1, но не в таблице 2

таблица 1 яблоко оранжевый груша

таблица 2 яблоко оранжевый

в SQL вас может сделать предложение EXCEPT (http://en.wikipedia.org/wiki/Set_operations_%28SQL%29), но вы не можете этого сделать в Hive QL

ответ

16

Я не думаю, что есть какой-либо встроенный способ сделайте это, но LEFT OUTER JOIN должен сделать трюк.

Это выбирает все идентификаторы из table1, что делать не существуют в table2:

SELECT t1.id FROM table1 t1 LEFT OUTER JOIN table2 t2 ON (t1.id=t2.id) WHERE t2.id IS NULL; 
+0

спасибо, что дали мне то, что я хотел – sesquipedalians

Смежные вопросы