我是 xquery 新手。为什么第一个 xquery 语句有效,而第二个则无效?第一个在第二层有多个 xml 元素,第一个在顶层有多个。
let $payload := <root><foo>bar</foo></root>
return
<root>
{
if (exists($payload/foo)) then
<prop>
<key>mykey</key>
<value>bar</value>
</prop>
else
""
}
</root>
这不是
let $payload := <root><foo>bar</foo></root>
return
<root>
{
if (exists($payload/foo)) then
<key>mykey</key>
<value>bar</value>
else
""
}
</root>
最佳答案
您需要将元素括在括号中并用逗号分隔元素,因为没有封闭的根元素:
if (exists($payload/foo)) then (
<key>mykey</key>,
<value>bar</value>
) else (
""
)
关于xquery - 为什么第一个 xquery 语句有效但第二个不行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67503992/