gpt4 book ai didi

Azure 查询分析计算列中所有值的平均值

转载 作者:行者123 更新时间:2023-12-02 00:58:39 25 4
gpt4 key购买 nike

我正在使用应用程序洞察来记录有关我们应用程序的自定义测量。我有一个 customEvent,其数据存储在 customMeasurements 对象中。该对象包含 4 个键值对。我有很多这样的自定义事件,我正在尝试对所有事件的键值对进行平均,并将结果显示在 2 列表中。

I want to have one table that has 2 columns. First column is the key name, and the second column in the key-value of all the events averaged.

例如,event1 将 key1 的值设置为 2。 event2 将 key1 的值设置为 6。如果这是我在过去 7 天内收到的唯一两个事件,我希望我的表格在包含 key1 数据的行中显示数字 4

我只能对每个查询 1 个键进行平均,因为我无法在 1 个查询中放入多个汇总...以下是对 customMeasurements 对象中的第一个键进行平均的内容:

customEvents
| where name == "PerformanceMeasurements"
| where timestamp > ago(7d)
| summarize key1average=avg(toint(customMeasurements.key1))
| project key1average

但我需要对该对象内的所有键进行平均,并如上所述构建 1 个表。

作为引用,我附上了 customEvent customMeasurements 对象布局的屏幕截图:Here is one event's customMeasurement data

最佳答案

如果键的数量有限并且事先已知,那么我建议在 | 中使用多个聚合总结 运算符,用逗号分隔它们:

| summarize key1average=avg(toint(customMeasurements.key1)), key2average=avg(toint(customMeasurements.key2)), key3average=avg(toint(customMeasurements.key3))

如果键可能有所不同,那么您首先需要使用 |mvexpand operator 展平自定义维度。 :

customEvents
| where timestamp > ago(1h)
| where name == "EventName"
| project customDimensions
| mvexpand bagexpansion=array customDimensions
| extend Key = customDimensions[0], Value = customDimensions[1]
| summarize avg(toint(Value)) by tostring(Key)

在这种情况下,customDimensions 中的每个键值对都将成为其自己的行,您将能够使用标准查询语言结构对这些键值对进行操作。

关于Azure 查询分析计算列中所有值的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52278047/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com