Xquery Marklogic-cts:文档查询

Xquery Marklogic-cts:文档查询,xquery,marklogic,Xquery,Marklogic,最近,我不得不使用MarkLogic,有些事情我不明白 我不想让你澄清我对MarkLogic的所有担忧(只有一个:) 有一个XQuery,我不明白它是做什么的 let $pap := cts:uris( (), (), cts:and-query(( cts:collection-query("/pageType/collection1"), )) ) let $collection := ("/pageType/Attachment") return xdmp:

最近,我不得不使用MarkLogic,有些事情我不明白

我不想让你澄清我对MarkLogic的所有担忧(只有一个:)

有一个XQuery,我不明白它是做什么的

let $pap := cts:uris(
   (), (),
   cts:and-query((
      cts:collection-query("/pageType/collection1"),
   ))
)

let $collection := ("/pageType/Attachment")
return
xdmp:estimate(
   cts:search(
      fn:doc(),
      cts:and-query((
         cts:collection-query(($collection)),
         cts:document-query($pap)
      ))
   )
)
我很难理解文档查询函数的功能

谁能给我点化一下吗?我是MarkLogic的初学者,以前使用过关系数据库

谢谢


V.

不要因为不理解这一点而感到难过。这有点迟钝。而且效率低下

如果我读对了,它真正做的是计算属于集合“/pageType/Attachement”和“/pageType/collection1”的文档数量

我相信(暂时不测试)通过这样做可以大大简化

xdmp:估计值( cts:搜索( fn:doc(), cts:和查询(( cts:集合查询(“/pageType/collection1”), cts:集合查询(“/pageType/Attachment”) )) )
)我忘了回答你的第一个问题<代码>cts:document-query()记录在这里:


在这种情况下,它充当返回
cts:search
的过滤器,以仅包括由上一个查询
cts:uri()

找到的文档。在某些情况下,您可以使用类似这样的查询来实现联接。也许事情就是这样开始的。早上好,达尔代,谢谢你的帮助!我来自关系数据库世界,在上面的表达式中找不到任何连接(比如product.id=sale.product\u id)。也许我不需要任何这样的链接,但我不明白这两个集合中的相关页面是如何“找到”彼此的。再次感谢你,V。