如何使用或在Xquery中

时间:2013-02-18 17:24:01

标签: xml xquery

我如何使用或在查询中使用?

如果name =“Michael”或者年龄= 21,我想返回。 这就是我所拥有的

$d[contains((name,"Michael") or (age,"21"))]

1 个答案:

答案 0 :(得分:2)

如果你想检查它们是否=:

 $d[name = "Michael" or age = "21"]

或者如果你真的想使用contains:

 $d[contains(name,"Michael") or contains(age,"21")]

当你写contains((,) or (,) )时,你似乎在语法层面上使用or,给xquery解析器两个不同。这在Xquery或大多数编程语言中是不可能的,因为它们的函数和操作数在表达式的上运行,而不是在语法上运行。 (name,"Michael")但是没有值(嗯,它具有两个元素序列的值,但这不是您感兴趣的值),只有contains(name,"Michael")具有测试的实际值,如果name包含"Michael"。所以,或者必须在两次调用contains之间。