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中效果最佳。