如何提取仅含单个值的dynamic类型列的字段值?
解决方法
先明确两个核心点:
mv-expand是用来把数组展开成多行的,你要的是将单元素数组转为单个字段值,所以用它没效果是正常的。- 你用
Target.Properties[0].value[0]返回空值,大概率是以下两种情况之一,对应解决方案如下:
情况1:Target.Properties[0].value是真正的dynamic数组
如果该字段本身就是数组类型(例如["f3019"]),直接取索引后转为字符串即可:
Id = tostring(Target.Properties[0].value[0])
如果担心数组为空导致报错,可以加个默认值兜底:
Id = tostring(coalesce(Target.Properties[0].value[0], ""))
情况2:Target.Properties[0].value是字符串格式的数组
如果该字段存储的是字符串形式的数组(例如"[\"f3019\"]"),需要先解析为dynamic数组再取索引:
Id = tostring(parse_json(Target.Properties[0].value)[0])
你可以先运行以下查询,确认Target.Properties[0].value的实际类型和内容:
print typeof(Target.Properties[0].value), Target.Properties[0].value
内容的提问来源于stack exchange,提问作者swtto
相关产品推荐
相关产品推荐

