在 BigQuery 中展平两个数组的结构的正确方法是什么?我有一个如图所示的数据集(struct.destination 和 struct.visitors 数组是有序的 - 即访问者计数专门对应于同一行中的目的地):
我想重新组织数据,以便为每个独特的出发地和目的地组合计算总访客数。理想情况下,最终结果将如下所示:
我尝试连续两次使用 UNNEST - 一次在 struct.destination 上,然后在 struct.visitors 上,但这会产生错误的结果(每个目的地都映射到访问者计数数组中的每个值,而它应该只映射到值在同一行):
SELECT
origin,
unnested_destination,
unnested_visitors
FROM
dataset.table,
UNNEST(struct.destination) AS unnested_destination,
UNNEST(struct.visitors) AS unnested_visitors
Run Code Online (Sandbox Code Playgroud)