Kusto 查询带过滤的迭代字符串数组
Kusto query for iterate string array with filtering
现在我有数据了,比如
CSV = "AAA@XXX.com,BBB@YYY.com,CCC@XXX.com,DDD@ZZZ.com,EEE@YYY.com,FFF@XXX.com"
应用 parse_csv(),然后得到
| data |
| ["AAA@XXX.com", "BBB@YYY.com", "CCC@XXX.com", "DDD@ZZZ.com", "EEE@YYY.com", "FFF@XXX.com"] |
如何简单的过滤数据得到
| XXX.com | YYY.com | ZZZ.com |
|-----------------------|----------------|----------|
| ["AAA", "CCC", "FFF"] | ["BBB", "EEE"] | ["DDD"] |
关键不在于如何转换数据(AAA@XXX.com -> AAA),而是如何为每个类型拆分日期(XXX.com, YYY.com, ZZZ.com).
这可以工作,但效率不高。
考虑根据输出模式调整您使用数据的方式,以便您能够删除最后两行:
print input = "AAA@XXX.com,BBB@YYY.com,CCC@XXX.com,DDD@ZZZ.com,EEE@YYY.com,FFF@XXX.com"
| mv-apply address = split(input, ",") on (
parse address with name "@" domain
| summarize make_list(name) by domain
)
| summarize b = make_bag(pack(domain, list_name))
| evaluate bag_unpack(b)
XXX.com
YYY.com
ZZZ.com
[
"AAA",
"CCC",
"FFF"
]
[
"BBB",
"EEE"
]
[
"DDD"
]
现在我有数据了,比如
CSV = "AAA@XXX.com,BBB@YYY.com,CCC@XXX.com,DDD@ZZZ.com,EEE@YYY.com,FFF@XXX.com"
应用 parse_csv(),然后得到
| data |
| ["AAA@XXX.com", "BBB@YYY.com", "CCC@XXX.com", "DDD@ZZZ.com", "EEE@YYY.com", "FFF@XXX.com"] |
如何简单的过滤数据得到
| XXX.com | YYY.com | ZZZ.com |
|-----------------------|----------------|----------|
| ["AAA", "CCC", "FFF"] | ["BBB", "EEE"] | ["DDD"] |
关键不在于如何转换数据(AAA@XXX.com -> AAA),而是如何为每个类型拆分日期(XXX.com, YYY.com, ZZZ.com).
这可以工作,但效率不高。
考虑根据输出模式调整您使用数据的方式,以便您能够删除最后两行:
print input = "AAA@XXX.com,BBB@YYY.com,CCC@XXX.com,DDD@ZZZ.com,EEE@YYY.com,FFF@XXX.com"
| mv-apply address = split(input, ",") on (
parse address with name "@" domain
| summarize make_list(name) by domain
)
| summarize b = make_bag(pack(domain, list_name))
| evaluate bag_unpack(b)
XXX.com | YYY.com | ZZZ.com |
---|---|---|
[ "AAA", "CCC", "FFF" ] |
[ "BBB", "EEE" ] |
[ "DDD" ] |