从 "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!
我目前正在使用 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!