KQL 时间序列对时间范围进行分组 - Kusto
KQL Time Series to group time range - Kusto
我有一个包含 StartDate 和 EndDate 列的数据集。我正在尝试计算在任何给定时间步长有多少项目 'active' 。例如:如果项目有 StartTime 01/21/2021 和 EndTime 03/22/2021,它将增加 01/2021、02/2021、03/2021。
我觉得这与时间序列有关,但我无法理解它。
let data=datatable(startTime:datetime, endtime:datetime)
[
datetime(2021-07-07), datetime(2021-07-13),
datetime(2021-07-02), datetime(2021-09-09),
datetime(2021-06-21), datetime(2021-06-21),
datetime(2021-06-21), datetime(2021-07-23),
datetime(2021-07-07), datetime(2021-07-07),
datetime(2021-07-08), datetime(2021-08-11),
datetime(2021-05-23), datetime(2021-08-23),
]
输出:
Month Count
2021-05 1
2021-06 3
2021-07 6
2021-08 3
提前致谢
基于此 documentation 的细微变化:
execute on web explorer help cluster
let data=datatable(startTime: datetime, endtime: datetime) [
datetime(2021-07-07), datetime(2021-07-13),
datetime(2021-07-02), datetime(2021-09-09),
datetime(2021-06-21), datetime(2021-06-21),
datetime(2021-06-21), datetime(2021-07-23),
datetime(2021-07-07), datetime(2021-07-07),
datetime(2021-07-08), datetime(2021-08-11),
datetime(2021-05-23), datetime(2021-08-23),
];
data
// assign an id to each original event (since this is what we want to count)
| serialize | extend n=row_number()
| extend Samples = range(startTime, endtime, 1d)
| mv-expand Samples to typeof(datetime)
| extend Month = startofmonth(Samples)
// count unique events per month
| summarize dcount(n) by Month
我有一个包含 StartDate 和 EndDate 列的数据集。我正在尝试计算在任何给定时间步长有多少项目 'active' 。例如:如果项目有 StartTime 01/21/2021 和 EndTime 03/22/2021,它将增加 01/2021、02/2021、03/2021。
我觉得这与时间序列有关,但我无法理解它。
let data=datatable(startTime:datetime, endtime:datetime)
[
datetime(2021-07-07), datetime(2021-07-13),
datetime(2021-07-02), datetime(2021-09-09),
datetime(2021-06-21), datetime(2021-06-21),
datetime(2021-06-21), datetime(2021-07-23),
datetime(2021-07-07), datetime(2021-07-07),
datetime(2021-07-08), datetime(2021-08-11),
datetime(2021-05-23), datetime(2021-08-23),
]
输出:
Month Count
2021-05 1
2021-06 3
2021-07 6
2021-08 3
提前致谢
基于此 documentation 的细微变化:
execute on web explorer help cluster
let data=datatable(startTime: datetime, endtime: datetime) [
datetime(2021-07-07), datetime(2021-07-13),
datetime(2021-07-02), datetime(2021-09-09),
datetime(2021-06-21), datetime(2021-06-21),
datetime(2021-06-21), datetime(2021-07-23),
datetime(2021-07-07), datetime(2021-07-07),
datetime(2021-07-08), datetime(2021-08-11),
datetime(2021-05-23), datetime(2021-08-23),
];
data
// assign an id to each original event (since this is what we want to count)
| serialize | extend n=row_number()
| extend Samples = range(startTime, endtime, 1d)
| mv-expand Samples to typeof(datetime)
| extend Month = startofmonth(Samples)
// count unique events per month
| summarize dcount(n) by Month