如何在Hive中将一个表中列的每个不同值与另一表中列的每个不同值映射

时间:2018-10-12 19:32:48

标签: hive

我在Hive中有两个表,表1和表2。我想在Table1中获取每个不同的customerID并将其映射到称为Table2类别的列中的每个不同值。但是,我对如何在蜂巢中执行此操作有些迷失。下面是我尝试做的一个更好的示例:假设Table1包含5个不同的customerID,而Table2包含3个不同的类别。我希望查询结果如下所示:

ExampleofTable

但是Table1和Table2没有任何共同的列,因此我对如何在配置单元中的这两个表上执行联接有些迷惑。蜂巢中可以完成此任务吗?任何对此的见解将不胜感激!

1 个答案:

答案 0 :(得分:1)

您可以使用两个表中不同值的cross join来做到这一点。

select t1.customerid,t2.categories
from (select distinct customerid from tbl1) t1
cross join (select distinct categories from tbl2) t2