[英]How to query for grouped distinct records that both have null and non-null values in Kusto?
我正在嘗試創建一個查詢,該查詢返回一個結果集,該結果集具有基於另一個非空(數據)列的不同(汽車)列。
在下面的示例中,如果在數據列中找到非空值,則返回帶有值的單個實例,如果沒有,則返回帶有 null 的值,並始終保持第一列的獨特性。
let Car = datatable(car, data:string)
[
"mercedes", "fast",
"mercedes", null,
"tesla", null
"toyota", "good",
"sonata", null,
"sonata", null,
"sonata", "amazing"
];
所以所需的 output 將是:
"mercedes", "fast",
"tesla", null,
"toyota", "good",
"sonata", "amazing",
謝謝!
一種選擇是結合使用set_difference()
和make_set()
:
make_set()
將創建一組data
的所有唯一值(通過car
,聚合鍵)dynamic([""])
是一個帶有空字符串的數組set_difference()
將產生兩個前者之間的差異 arrays - 提供具有非空字符串(或空集)的集合[0]
),您將獲得第一個非空元素(或 null,如果集合為空)datatable(car:string, data:string)
[
"mercedes", "",
"mercedes", "fast",
"tesla", "",
"toyota", "good",
"sonata", "",
"sonata", "",
"sonata", "amazing"
]
| summarize data = set_difference(make_set(data), dynamic([""]))[0] by car
車 | 數據 |
---|---|
奔馳 | 快速地 |
特斯拉 | |
豐田 | 好的 |
奏鳴曲 | 驚人的 |
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.