作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试访问 Azure KQL 中的 XML 元素属性,并使用 parse_xml 将其转换为 JSON。然而 extractjson 函数似乎不喜欢使用 @ 符号。请参阅下面的代码片段。
let input_xml="<NetAmount currency=\"USD\">150.00</NetAmount>";
let sJson=tostring(parse_xml(input_xml));
let amount=extractjson("$.NetAmount.#text", sJson);
let sCurrency=extractjson($.NetAmount.@currency, sJson);
print input_xml, amount, sJson //, sCurrency;
如果你运行上面的代码,它就会工作。但是,如果您在 print 语句中对 sCurrency 的引用进行注释,则会出现错误,内容如下:
运行您的查询时出现问题。请稍后重试
您对如何在 extractjson 函数中引用货币属性有什么想法吗?
最佳答案
您不需要使用extract_json()
,而您可以简单地使用动态对象访问器: https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/scalar-data-types/dynamic#dynamic-object-accessors
print input_xml = "<NetAmount currency=\"USD\">150.00</NetAmount>"
| project sJson = parse_xml(input_xml)
| project amount = sJson.NetAmount['#text'], currency = sJson.NetAmount['@currency']
关于json - 如何使用 KQL extractjson 函数引用以 @ 符号开头的 XML 属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70021321/
我是一名优秀的程序员,十分优秀!