如何在BigQuery(BQ)中将多列数据转换为JSON格式
BigQuery多列转JSON字段实现方案
推荐写法(输出标准JSON格式)
使用BigQuery内置的TO_JSON_STRING函数配合STRUCT打包目标字段,输出的内容符合JSON规范,支持后续直接调用JSON函数做解析处理:
SELECT empid, ename, TO_JSON_STRING(STRUCT( start_date, end_date, city )) AS emp_attributes FROM -- 替换为你实际的表路径 `your_project.your_dataset.your_employee_table`
如果你需要使用BigQuery原生JSON类型存储该字段,可以将TO_JSON_STRING替换为TO_JSON,返回结果为JSON类型而非字符串类型,后续操作效率更高。
对齐示例格式写法(输出非标准JSON字符串)
如果需要完全和你给出的示例格式(键不带双引号)完全对齐,可以使用字符串拼接实现,该方式输出的是普通字符串,无法直接调用JSON函数处理,非特殊需求不推荐:
SELECT empid, ename, CONCAT( '{start_date: ', start_date, ', end_date: ', end_date, ', city: ', city, '}' ) AS emp_attributes FROM -- 替换为你实际的表路径 `your_project.your_dataset.your_employee_table`
内容的提问来源于stack exchange,提问作者kalyan4uonly
相关产品推荐
相关产品推荐

