【发布时间】:2019-02-28 01:14:17
【问题描述】:
我在一个表中有一组用户的一组数据。数据是 JSON 格式,我必须从那里提取它。
有一个数据集,电子邮件,其中包含该用户的多封电子邮件。有些用户有 4 封电子邮件,而其他用户则有 3、2、1 封,甚至没有。
数据格式为:
{"androidId":"49ca9d8934c67a03","deviceId":"863177039120979","emails":"xyzabcdef123@gmail.com,helloworld56@gmail.com,ihaveemail@gmail.com,gojkl8823@gmail.com","manufacturer":"LENOVO","name":"Lenovo A6020a40","networkOperator1Id1":"405854"}
所以首先我从 JSON 中提取这些数据,我得到的结果是
emails:xyzabcdef123@gmail.com,helloworld56@gmail.com,ihaveemail@gmail.com,gojkl8823@gmail.com
但现在我需要将这些电子邮件相应地分成几列。
这里,决赛桌应该是这样的
- email1 : xyzabcdef123@gmail.com
- email2:helloworld56@gmail.com
- email3 : ihaveemail@gmail.com
- email4 : gojkl8823@gmail.com
我尝试了一些东西,但没有到达那里。有人可以帮帮我吗?
【问题讨论】:
-
我删除了 MySQL 标签,因为它似乎更有可能是“意外”。但是,您应该确认您真正使用的数据库。
-
您确定要列吗?作为列返回会将您限制为一定数量的条目
-
我在想列会让我更容易阅读和分析数据,另外我需要将电子邮件与其他一些列匹配。
-
我建议在将 json 数据导入 BigQuery 之前对其进行转换。也许使用 Dataflow 或 Dataprep。
标签: sql google-bigquery