我在kusto表中有两列,第二列有逗号分隔值,我需要将值投影为单独的列。第二列中的逗号分隔值,每个环境的更改,并且无法进行硬编码。
输入:
key val
key1 val1,val2,val3,val4
key2 val8,val2,val9,val4
key3 val8,val1,val9,val5
输出:
keyhdr valhdr1 valhdr2 valhdr3 valhdr4
key1 val1 val2 val3 val4
key2 val8 val2 val9 val4
key3 val8 val1 val9 val5
答案 0 :(得分:0)
您可以首先使用split函数从表格表达式创建数组,然后可以使用数组索引将其扩展为列。请注意,如果在索引中找不到值,则将使用空字符串填充该值。 这将为您提供所需的输出:
datatable(key:string, val:string)
[
"key1","val1,val2,val3,val4",
"key2", "val8,val2,val9,val4",
"key3", "val8,val1,val9,val5"
]
| extend all=split(val,',')
| extend valhdr1 = all[0]
| extend valhdr2 = all[1]
| extend valhdr3 = all[2]
| extend valhdr4 = all[3]
| project key,valhdr1,valhdr2,valhdr3,valhdr4