Google bigquery 使用大查询将firebase事件参数键值数据显示到单行中

Google bigquery 使用大查询将firebase事件参数键值数据显示到单行中,google-bigquery,Google Bigquery,我正在尝试对Firebase存储的事件执行Google BigQuery。我已经执行了以下查询 SELECT * FROM `myTable` LIMIT 6 其结果如下: +-----+----------+--------+------------------+---------------------------------+ | Row | date | name | event_params.key | event_params.value.string_value |

我正在尝试对Firebase存储的事件执行Google BigQuery。我已经执行了以下查询

SELECT * FROM `myTable` LIMIT 6
其结果如下:

+-----+----------+--------+------------------+---------------------------------+
| Row |   date   |  name  | event_params.key | event_params.value.string_value |
+-----+----------+--------+------------------+---------------------------------+
|   1 | 20200922 | Event1 | errorName        | BLE_Not_connected               |
|     |          |        | appDetails       | 2.2.2                           |
|     |          |        | errorDetails     | iOS-Error                       |
+-----+----------+--------+------------------+---------------------------------+
因此,这里第1行有多个
event_params.key
条目,它们的值显示在
event_params.value.string_value
列中。现在,我想执行一个Google大查询,将
事件参数.key
列值展平,并在下面显示结果

+-----+----------+--------+------------------+---------------------------------+
| Row |   date   |  name  | errorName        | appDetails  | errorDetails      |
+-----+----------+--------+------------------+---------------------------------+
|   1 | 20200922 | Event1 | BLE_Not_connected| 2.2.2       | iOS-Error         |
+-----+----------+--------+------------------+---------------------------------+

有人能帮我吗?提前感谢。

下面是BigQuery标准SQL

EXECUTE IMMEDIATE (
  SELECT """
  SELECT date, name, """ || 
    STRING_AGG("""MAX(IF(key = '""" || key || """', value.string_value, NULL)) AS """ || key, ', ') 
  || """
  FROM `project.dataset.table` t, t.event_params
  GROUP BY date, name
  """
  FROM (
    SELECT DISTINCT key
    FROM `project.dataset.table` t, t.event_params
  )
);     
如果要应用于问题中的样本数据,则输出为

Row date        name    errorName           appDetails  errorDetails     
1   20200922    Event1  BLE_Not_connected   2.2.2       iOS-Error