makeset操作不能保留排序?

时间:2019-02-01 09:34:36

标签: azure-application-insights azure-log-analytics

以下命令不会产生一致的项目顺序:

KubePodInventory
| where ClusterName == "mycluster"
| distinct Computer
| order by Computer asc
| summarize makeset(Computer)

但是在阅读文档(see here)时,其内容如下:

  

像makelist一样,makeset也可用于有序数据,并将生成   根据传递到其中的行的顺序排列数组。

这是一个错误还是我正在做些麻烦的事情?

2 个答案:

答案 0 :(得分:1)

按照上述issue @MohitVerma所述,makeset()不应该支持排序,并且他们正计划更正doc像makelist一样,makeset也可以用于排序数据,并且根据传递到其中的行的顺序生成数组。

您可以使用makelist()作为解决方法,它确实支持根据我的测试进行排序。

答案 1 :(得分:0)

请检查此答案以了解类似的操作类型。

How to order item in Makeset?

以下代码对我有用-

requests | summarize makeset(client_City) by client_City | distinct client_City | order by client_City asc

enter image description here

您可以在该线程中查看代码段,标记为关闭该线程的答案。

https://github.com/MicrosoftDocs/azure-docs/issues/24135#issuecomment-460185491

requests | summarize makeset(client_City) by client_City | distinct client_City | order by client_City asc | summarize makelist(client_City)