BigQuery - 重复字段行索引

BigQuery - repeated field rows index

有没有办法在 BigQuery 中添加聚合数组字段的索引列?我使用的是标准 sql?

我的目标是让 hits.hitNumber 作为按 hits.time

排序的 hits 数组中的一个位置

以下适用于 BigQuery SQL。正如所问 - 它采用原始数组(命中),只是简单地按字段(时间)之一排序 "injects" 数字(hitNumber),同时删除缺少值或不正确的原始 hitNumber,这就是为什么你很可能需要重新计算它.我觉得很简单

#standardSQL
SELECT sessionid, 
  ARRAY(
    SELECT AS STRUCT 
      ROW_NUMBER() OVER(ORDER BY hit.time) hitNumber, hit.* except(hitNumber)
    FROM UNNEST(hits) hit
  ) hits
FROM `project.dataset.table` t