逗号将值分隔为Kusto

时间:2018-01-12 06:28:36

标签: sql analytics kusto

我在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

1 个答案:

答案 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