Xquery 在MarkLogic中搜索和检索多个集合?

Xquery 在MarkLogic中搜索和检索多个集合?,xquery,marklogic,Xquery,Marklogic,如果我愿意,如何修复以下代码 指定多个集合?(如“pdf”和“systemA”) 如果要获取中的文档,请选择“A”或“B”集合。在MarkLogic中,可以传递多个URI:fn:collection((“A”、“B”))。如果您希望文档同时位于的“A”和“B”集合中,则必须将其作为搜索来执行 cts:search(doc(), cts:and-query((cts:collection-query("A"),cts:collection-query("B")),"unfiltered")

如果我愿意,如何修复以下代码 指定多个集合?(如“pdf”和“systemA”)


如果要获取中的文档,请选择
“A”
“B”
集合。在MarkLogic中,可以传递多个URI:
fn:collection((“A”、“B”))
。如果您希望文档同时位于
“A”
“B”
集合中,则必须将其作为搜索来执行

cts:search(doc(), 
  cts:and-query((cts:collection-query("A"),cts:collection-query("B")),"unfiltered")
或者手动设置交叉点

let $as := fn:collection("A")
return fn:collection("B")[not(. is $as)]

搜索将更加有效,因为它可以使用索引进行解析。

如果您想获取
“A”或
“B”集合中的文档。在MarkLogic中,可以传递多个URI:
fn:collection((“A”、“B”))
。如果您希望文档同时位于
“A”
“B”
集合中,则必须将其作为搜索来执行

cts:search(doc(), 
  cts:and-query((cts:collection-query("A"),cts:collection-query("B")),"unfiltered")
或者手动设置交叉点

let $as := fn:collection("A")
return fn:collection("B")[not(. is $as)]
搜索将更加有效,因为它可以使用索引来解析