BigQuery数组追加方法:处理Typeform多选自定义响应数据
场景说明
- 基于Typeform搭建含3道问题的问卷,其中2道多选题支持多选、允许用户填写“其他”自定义选项,共回收2份有效提交,响应原始数据为JSON格式(存储为
option.json文件)。 - 将JSON数据导入BigQuery创建数据表后,需要对嵌套结构的响应数据做扁平化处理,便于共享使用,核心需求:
- 准确记录每道多选题用户所选选项的排列序号、该题用户选择的总选项数;
- 将用户填写的“其他”自定义选项追加到常规已选选项列表末尾。
- 现有SQL逻辑通过
UNNEST展开答案数组、关联问卷字段定义,仅能处理未选择“其他”选项的场景,存在自定义选项丢失、空值行、序号统计错误的问题,无法得到预期结果。
预期结果
修正SQL后总计返回9行正确数据:
- EVENT_ID_1的QUESTION_ID_1返回3行:red(序号1,总序号3)、blue(序号2,总序号3)、yellow(序号3,总序号3)
- EVENT_ID_2的QUESTION_ID_1返回2行:red(序号1,总序号2)、orange(序号2,总序号2)
- EVENT_ID_2的QUESTION_ID_2返回1行非空数据:something else(序号1,总序号1)
- 其余文本题返回结果保持原有正确逻辑不变。
内容的提问来源于stack exchange,提问作者TMo
相关产品推荐
相关产品推荐

