【问题标题】:Kusto summarize 3 or more columnsKusto 总结 3 列或更多列
【发布时间】:2020-11-25 18:56:36
【问题描述】:

有没有办法使用 summarize 对 3 列或更多列进行分组?我已经能够成功地从 1 或 2 列中获取数据,然后按另一列分组,但是在尝试添加第三列时它会中断。 This question 询问如何添加列,但仅涉及添加第二列,而不是第三或第四列。使用 Azure 数据资源管理器上的示例帮助集群并使用 Covid19 表,理想情况下我将能够做到这一点:

Covid19
| summarize by Country, count() Recovered, count() Confirmed, count() Deaths
| order by Country asc

并返回这样的结果

但该查询引发错误“语法错误。发生识别错误。令牌:已恢复。行:2,位置:36”

【问题讨论】:

    标签: azure-data-explorer kql


    【解决方案1】:

    我的基本想法是正确的,你不能像这样重复使用 count 内联。您可以使用 sum、dcount 或 max:

    Covid19
    | summarize sum(Recovered), sum(Confirmed), sum(Deaths) by Country
    | order by Country asc
    

    另一个例子:

    Covid19
    | where Timestamp == max_of(Timestamp, Timestamp)
    | summarize confirmedCases = max(Confirmed), active = max(Active), recovered = max(Recovered), deaths = max(Deaths) by Country
    | order by Country asc
    

    在此示例中,我将获取每个选定列的最新数据。由于我最初使用 where 子句来获取最新数据,你会认为我可以只列出列,但是当使用 summarize 时,你必须使用聚合函数,所以我使用了最大在每一列

    【讨论】:

      猜你喜欢
      • 2020-08-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-05
      • 1970-01-01
      相关资源
      最近更新 更多