Bigquery JSON 提取函数

Posted

技术标签:

【中文标题】Bigquery JSON 提取函数【英文标题】:Big Query JSON Extract Function 【发布时间】:2021-07-08 12:33:46 【问题描述】:

我使用 JSON_EXTRACT 使用 BQ 从 JSON 中提取 2 个字段,如下所示:

select JSON_EXTRACT_SCALAR('Event_Value','$.user_id') as cid, JSON_EXTRACT_SCALAR('Event_Value','$.tsts') as ts

如果 JSON 格式缺少其中一个字段,我将在各处收到 NULL。

有办法克服吗?

【问题讨论】:

能否请您添加您要解析的表格及其示例数据的屏幕截图? 【参考方案1】:

我觉得解决方法很简单:

select JSON_EXTRACT_SCALAR(Event_Value,'$.user_id') as cid, JSON_EXTRACT_SCALAR(Event_Value,'$.tsts') as ts    

所以,Event_Value 周围有额外的 ' - 因此 Event_Value 不被视为列名,而是被视为字符串

【讨论】:

以上是关于Bigquery JSON 提取函数的主要内容,如果未能解决你的问题,请参考以下文章

从 json 文件 bigquery 中提取 Json Array 元素

选择/提取 JSON 元素时的高效 BigQuery

BigQuery AEAD 功能的密钥集管理最佳实践 [关闭]

从 BigQuery 列中提取 Json 值

如何从 BigQuery 中的 JSON 字符串中提取数组

Bigquery:从 json 数组中提取数据