我再次提出另一个与Kusto相关的问题(我真的希望在某个地方能有一个关于这方面的完整视频教程(。
我有一个summarize
语句,它为y轴生成两列,为x轴生成一列。现在,我想重新标记x轴的列,以显示一个字符串,这也是我从数据库中获得的,并且已经用let
放入了一个变量中。
基本上看起来是这样的:
let android_col = strcat("Android: ", toscalar(customEvents
| where application_Version contains secondLatestVersionAndroid));
let iOS_col = strcat("iOS: ", toscalar(customEvents
| where application_Version contains secondLatestVersionIOS));
... some Kusto magic ...
| summarize
Android = 100 - (round((countif(hasUnhandledErrorAndroid == 1 ) * 100.0 ) / countif(isAndroid == 1), 2)),
iOS = 100 - (round((countif(hasUnhandledErroriOS == 1) * 100.0 ) / countif(isIOS == 1), 2))
by Time
|render timechart with (ytitle="crashfree users in %", xtitle="date", legend=visible )
现在我想要的不是Android和iOS的摘要显示,而是Android_col和iOS_col的值。
这可能吗?
致以最良好的问候Maverick
通常,建议使用预定义的列名,否则各种功能将不起作用。例如,IntelliSense不会知道列的名称,因为它们只能在运行时确定。此外,如果您创建了一个返回动态模式的函数,您将无法从其他集群运行该函数。
然而,如果你确实想更改列名,你肯定有办法通过使用各种插件来完成。例如,bag_unpack、pivot等。
至于Kusto上的课程,实际上Pluralsight上有几门优秀的课程(都是免费的(:
- 如何开始使用Microsoft Azure Data Explorer
- 基本KQL
- Azure Data Explorer–高级KQL
;toscalar";在这个查询中看起来是错误的,在我看来,您应该使用"延伸";具有相同逻辑的运算符来创建附加列。