Hive: Как объединить две таблицы так, чтобы все записи из двух столбцов были в финальном состоянии? - PullRequest
0 голосов
/ 28 сентября 2019

У меня есть две таблицы в Hive

t1:
prod | rev
-------------
A |   1
A |   2
B |   1
B |   2
D |   1


t2:
prod | rev
-------------
A |   1
A |   2
B |   1
B |   2
C |   1
C |   2

Я хочу объединить их так, чтобы все продукты (prod) и ревизии (rev) были в финальной таблице, например.

t3:
prod | rev
-------------
A |   1
A |   2
B |   1
B |   2
C |   1
C |   2
D |   1

Я пытался, но просто недостаточно знаком с HQL, чтобы понять, как правильно это сделать.

Я считаю, что, возможно, LEFT JOIN, а затем UNION ALL, тогда RIGHT JOIN будет работать.И также использовать оператор WHERE после UNION ALL для удаления дубликатов, но я не могу написать рабочий запрос.Буду рад любой помощи в этом.

Ответы [ 2 ]

0 голосов
/ 30 сентября 2019

Вы можете попробовать UNION DISTINCT, который может устранить дубликаты в выводе

select * from t1
UNION DISTINCT
select * from t2
0 голосов
/ 28 сентября 2019

A union должен это сделать.

select * from t1
union
select * from t2;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...