未定义要分割数据的顺序时如何分割?

时间:2018-11-12 21:36:21

标签: tableau

我正在尝试通过Tableau可视化一个问答(多项选择)。 所有数据都以json格式(如

)放在表格的一列中
{"q1":"1","q3":"3","q2":"2"}

我想根据答案绘制q1,q2,q3。 q1,q2,q3可以在表的不同行中的json中以任意顺序排列。 此类表的一个示例是:

User_id       Answer
1         {"q1":"1","q3":"1","q2":"2"}
2         {"q2":"3","q3":"2","q2":"2"}
3         {"q3":"1","q1":"4","q2":"1"}

我认为我应该提取q1及其值,并为此创建一个单独的列。对于q2和q3同样。但是我不确定在订单不固定的情况下如何进行条件拆分。 我该怎么办?

1 个答案:

答案 0 :(得分:0)

在这种情况下,正则表达式可以提供帮助。创建如下所示的计算(只需根据需要替换问题编号)

REGEXP_EXTRACT([Answer],'"q1":"(\d)')

此正则表达式假定所提供的格式正确,但是如果需要帮助,可以对其进行改进以允许使用单引号,空格等。Please refer to this answer

enter image description here

注意:第二行缺少q1,它返回null。