你可以用这个
| summarize any(CowType, CowLabel) by CowName, CowNum
为了形象化这将如何工作,请使用以下示例表/查询:
let CowTable = datatable(CowNum:int, CowName:string, CowType:string, CowLabel:string, DontWantThis:int)
[
1, "Bob", "Bull", "label1", 99,
2, "Tipsy", "Heifer", "label1", 98,
3, "Milly", "Heifer", "label2", 99,
4, "Bob", "Bull", "label2", 87,
4, "Bob", "Bull", "label2", 77,
2, "Hanna", "Heifer", "label1", 98,
];
CowTable
| summarize any(CowType, CowLabel) by CowName, CowNum
结果:
请注意,我们没有看到 CowNum 4 被列出了两次,但是我们确实看到 CowNum 2 被列出了两次;这是因为这些行在 CowName 和 CowNum 方面是唯一的。我们还看到 Bob 列出了两次(不是 3 次);这是因为 Bob 条目中有 2 个在 CowName/CowNum 方面是唯一的,但 Bob 条目中有 2 个在 CowName/CowNum 方面不是唯一的。
如果您真的只想要 CowName 唯一且 CowNum 也不同的结果,您可以通过两步汇总来完成:
CowTable
| summarize any(CowName, CowType, CowLabel) by CowNum
| summarize any(CowNum, any_CowType, any_CowLabel) by any_CowName
//normalize column names
| project CowNum = any_CowNum, CowName = any_CowName, CowType = any_any_CowType, CowLabel = any_any_CowLabel
结果: