0
蜂巢中有2个表。表2是一张拥有数十亿记录的主表。蜂巢搜索2列存在于第二个表中的单列中
表1
name| id1 | id2
jac | 1 | 2
rac | 3 | 1
表2
class | id
first | 1
second| 3
我怎么能写在蜂巢高效的查询来搜索,从表中都ID1和ID2 1存在于表2和隔离这些记录?
感谢 毫秒
蜂巢中有2个表。表2是一张拥有数十亿记录的主表。蜂巢搜索2列存在于第二个表中的单列中
表1
name| id1 | id2
jac | 1 | 2
rac | 3 | 1
表2
class | id
first | 1
second| 3
我怎么能写在蜂巢高效的查询来搜索,从表中都ID1和ID2 1存在于表2和隔离这些记录?
感谢 毫秒
大概JOIN
是最好的方法:
select t1.*
from table1 t1 join
table2 t2a
on t1.id1 = t2a.id join
table2 t2b
on t1.id2 = t2b.id;
在其他的数据库,EXISTS
或IN
可能会更好,尤其是索引。我的猜测是,一个简单的JOIN
在Hive中效果最佳。