从 "Export Collections to BigQuery" firebase 扩展中获取 JSON 数据到行列格式

Getting the JSON data from the "Export Collections to BigQuery" firebase extension into row column format

我目前正在使用 Export Collections to BigQuery Firebase 扩展程序。

这是一个定期将 Firestore 集合更新到 BigQuery 的 Firebase 函数。

这很棒,但它似乎将 Firestore 文档数据放入 BigQuery 中的 "data" 列。

我的问题是,我如何才能将此 JSON 从数据列中提取到 BigQuery 中的单独列中。幸运的是,我的 JSON/Firestore 文档没有嵌套并且是扁平的,我打算保持这种状态。

任何建议都很好。我知道 https://cloud.google.com/bigquery/docs/reference/standard-sql/json_functions 但正在努力寻找合适的 SQL 查询来实现这一点。

您应该能够使用 JSON_EXTRACT_SCALAR 来 "column-ize" 您的数据。

with data as (select '{ "name" : "Jakob", "age" : "6" }' as my_json)
select 
  JSON_EXTRACT_SCALAR(my_json,'$.name') as name,
  JSON_EXTRACT_SCALAR(my_json,'$.age') as age
from data

考虑保持您的 firebase 'source' 数据不变,然后创建一个视图来解析 json 以提供可用的列。

    SELECT 
      JSON_EXTRACT(data, "$.user") AS user
    FROM `firebase-project.firestore_export.name-of-firestore-collection` 

是我能够用来从数据列中提取 JSON 并将其格式化为不同列的方法。

谢谢 rtenha!