XQuery中的动态谓词
我注意到一个事实,当谓词有要比较的动态字段时,它就不起作用了 例如:XQuery中的动态谓词,xquery,basex,Xquery,Basex,我注意到一个事实,当谓词有要比较的动态字段时,它就不起作用了 例如: db:open("library")//book[$filterFields = $pattern] 为此,我得到了0个结果 但是,当我将示例category替换为$filterField时,我得到了一些结果 如何使用谓词中的变量作为字段?如果假定$filterFields包含元素名称列表,则可以使用以下查询: db:open("library")//book [*[name() = $filterFields] =
db:open("library")//book[$filterFields = $pattern]
为此,我得到了0个结果
但是,当我将示例category替换为$filterField时,我得到了一些结果
如何使用谓词中的变量作为字段?如果假定
$filterFields
包含元素名称列表,则可以使用以下查询:
db:open("library")//book
[*[name() = $filterFields] = $pattern]
好的有简短的代码片段是很好的,但如果您有进一步的问题,请确保您的查询可以编译。这通常有助于理解您想要实现的目标。例如,由于未声明
$filterFields
和$pattern
,代码段将引发错误。