Mar*_* S. 3 kql azure-data-explorer
我有一个包含各种动态列的结果集,并且希望将这些动态列投影到一个新的动态列,其中这些列作为属性包含。
例子:
我的结果集由 2 个动态列组成
"MainSoftware": {
"Version": "2.10",
"BuildConfig": 3,
"SettingsVersion": 1
},
"SecSoftware": {
"ArticleNumber": "123",
"Version": "1.0"
}
Run Code Online (Sandbox Code Playgroud)
我想创建以下列作为输出:
"Software": {
"MainSoftware": {
"Version": "2.10",
"BuildConfig": 3,
"SettingsVersion": 1
},
"SecSoftware": {
"ArticleNumber": "123",
"Version": "1.0"
}
}
Run Code Online (Sandbox Code Playgroud)
我尝试使用 make_bag 但这只能用作聚合函数,并且在我的情况下我有一个平坦的结果集,其中我只需要根据已有的列构建一个计算动态列。
我还尝试使用这样的动态关键字创建列
| extend Software=dynamic({"MainSoftware": MainSoftware, "SecSoftware":SecSoftware})
Run Code Online (Sandbox Code Playgroud)
但这在语法上是不正确的,因为看起来我只能在表达式中使用常量值。
我找到了解决问题的办法。
pack -function正是我所需要的。
| project Software=pack("MainSoftware", MainSoftware, "SecSoftware", SecSoftware)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2316 次 |
| 最近记录: |