KQL(Azure 数据资源管理器)中按时间间隔对数据进行分组

gss*_*der 5 azure kql azure-data-explorer

我简化了 ADX 中的表格:

.create table trackedEvents (
    eventId:                 guid,
    eventType:               string,
    timestamp:               datetime,
    data1:                   string,
    data2:                   int,
    data3:                   real)
Run Code Online (Sandbox Code Playgroud)

我需要统计指定时间范围内以1小时为时间间隔分组的记录。

我可以在不分组的情况下做到这一点:

trackedEvents
| where eventType == 'pageEvent'
  and timestamp >= datetime('2021-05-18')
  and timestamp <= datetime('2021-05-19')
| summarize Count=count()
Run Code Online (Sandbox Code Playgroud)

我显然得到了一个标量结果。我想获得一个表格结果,其中包含按时间范围内每个小时分组的计数。

我对KQL还很陌生,因此我们将非常感谢您的帮助。

问候, 贾科莫 SS

Sla*_*k N 11

您应该使用该bin函数,如下所示:

trackedEvents
| where eventType == 'pageEvent'
| summarize Count=count() by bin(timestamp, 1d)
Run Code Online (Sandbox Code Playgroud)