如何使用cts:uris()从Marklogic 9的多个集合中获取uri。 查询返回一个空序列
let $u := cts:uris((),(),cts:and-query((cts:collection-query("/lib/info"),
cts:collection-query("/lib/top10"),
cts:element-value-query(xs:QName("function"),"stats")
))
)
return $u
答案 0 :(得分:2)
您是否要同时拥有两个收藏集或其他文档?像您一样使用and-query
意味着它只会返回具有BOTH和BOTH的文档。将其转换为or-query
,并用and-query
将其包装起来。为简单起见,您还可以将匹配任何序列的序列传递给collection-query
。最后,您不需要let
和return
,而且对于较大的结果集而言,摆脱它们可以让服务器流式传输而不是缓冲式。
cts:uris((),(),
cts:and-query((cts:collection-query(("/lib/info","/lib/top10")),
cts:element-value-query(xs:QName("function"),"stats")
))
)