我有两个大表,一个基表和一个用于过滤的表。我想要“my_filter”为真的键。
哪一个为我提供了最佳性能的 Google BigQuery?
标准连接
select
[fields]
from base_table
join filter_table
on filter_table.my_key = base_table.my_key
where filter_table.my_filter
加入子查询
select
[fields]
from base_table
join (
select my_key from filter_table where my_filter
) filter_table
on filter_table.my_key = base_table.my_key
半连接
select
[fields]
from base_table
where my_key in (
select my_key from filter_table where my_filter
)
对于上下文:Google BQ 文档讨论了半连接,但没有解释为什么要使用它们。