gpt4 book ai didi

xquery - where子句,用于确定元素值是否在序列中(XQ)

转载 作者:行者123 更新时间:2023-12-02 09:26:59 24 4
gpt4 key购买 nike

如果一个元素的值包含在值的序列中,我试图从XML本地数据库中提取一些数据。别以为我说的没错。例如,

给定以下XML:

<root>
<a>1</a>
<root>

似乎应该有一种类似的方法(请原谅语法,将其视为伪)
where root/a in (1,2,3,4)

从我的所有搜索看来,这似乎是不可能的。充其量,我得到了:
where root/a = 1 or root/1 = 2 or root/a = 3   etc

有一个更好的方法吗?

最佳答案

您可以简单地使用=运算符:

where root/a = (1,2,3,4)
=适用于类似于contains的设置值,这正是您所需要的。将 =eq进行比较,后者需要原子值进行比较。

以下是一个完整的示例。

XML:
<root>
<parent>
<a>1</a>
</parent>
<parent>
<a>4</a>
</parent>
<parent>
<a>10</a>
</parent>
</root>

XQuery:
for $p in /root/parent
where $p/a = (1,2,3,4)
return $p

输出:
<parent>
<a>1</a>
</parent>
<parent>
<a>4</a>
</parent>

演示: xpathtester

关于xquery - where子句,用于确定元素值是否在序列中(XQ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36928642/

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