Xquery 如何使用MarkLogic中的cts:values获得元素的最大值?
我想从数据库中存在的所有文档中获取Xquery 如何使用MarkLogic中的cts:values获得元素的最大值?,xquery,marklogic,Xquery,Marklogic,我想从数据库中存在的所有文档中获取的最大值 样本文件- <root xmlns="http://marklogic.com/sample"> <node> <ID>3253523</ID> <value1>.....</value1> <value2>.....</value2> <value3>.....</value3> <value4>.
的最大值
样本文件-
<root xmlns="http://marklogic.com/sample">
<node>
<ID>3253523</ID>
<value1>.....</value1>
<value2>.....</value2>
<value3>.....</value3>
<value4>.....</value4>
.....................
</node>
</root>
3253523
.....
.....
.....
.....
.....................
我尝试的方法如下-
http://marklogic.com/sample
/sa:root/sa:node/sa:ID
声明命名空间sa=”http://marklogic.com/sample";
(cts:values(cts:path引用('/sa:root/sa:node/sa:ID'),(),“降序”)[1]
但这给了我一个空序列。不知道我在这里错过了什么
有什么建议吗?正如Elijah Bernstein Cooper所建议的那样 我刚刚添加了
xmlns=”http://marklogic.com/sample“
命名空间在您共享的xml中,并在数据库中插入了一些xml文件
创建了路径名称空间、路径范围索引并运行了共享cts查询,它工作得非常好,因此Elijah
是正确的,您只需要在xml中指定名称空间
查询中的小更改在declare namespace
语句中,前缀将是sa
而不是es
希望这能有所帮助。正如Elijah Bernstein Cooper所建议的那样 我刚刚添加了
xmlns=”http://marklogic.com/sample“
命名空间在您共享的xml中,并在数据库中插入了一些xml文件
创建了路径名称空间、路径范围索引并运行了共享cts查询,它工作得非常好,因此Elijah
是正确的,您只需要在xml中指定名称空间
查询中的小更改在declare namespace
语句中,前缀将是sa
而不是es
希望这有帮助。尝试将命名空间绑定作为第三个参数传递给。见: 顺便说一下,这可能是从范围索引中获取最大值的最有效方法。见: 该方法类似于以下片段:
cts:max(
cts:path-reference('/sa:root/sa:node/sa:ID', (),
map:entry("sa", "http://marklogic.com/sample")
))
希望这能有所帮助,尝试将带有名称空间绑定的映射作为第三个参数传递给。见: 顺便说一下,这可能是从范围索引中获取最大值的最有效方法。见: 该方法类似于以下片段:
cts:max(
cts:path-reference('/sa:root/sa:node/sa:ID', (),
map:entry("sa", "http://marklogic.com/sample")
))
希望这有所帮助,您确定节点具有名称空间
http://marklogic.com/sample
?我希望根元素看起来像
。您的其余步骤看起来可以正常工作。是的,很抱歉,我忘了在示例文档中添加它。但是无论您提到什么,它看起来都是一样的。是因为int值太长了吗3253523
http://marklogic.com/sample?我希望根元素看起来像
。您的其余步骤看起来可以正常工作。是的,很抱歉,我忘了在示例文档中添加它。但是它看起来和你提到的一样。是因为int值太长了吗?3253523
?谢谢我修改了名称空间。但不知何故,我遗漏了一些东西,它给了我一个空序列。请提供cts:query
,从qconsole保存在数据库中的xml屏幕截图以及8001端口的路径名称空间和路径范围索引的屏幕截图。这将帮助我在更短的时间内帮助您。谢谢,我修改了名称空间。但不知何故,我遗漏了一些东西,它给了我一个空序列。请提供cts:query
,从qconsole保存在数据库中的xml屏幕截图以及8001端口的路径名称空间和路径范围索引的屏幕截图。这将有助于我在更短的时间内帮助您。@ehennum--您能给我一个关于如何在这种情况下使用cts:max()
的示例吗。@ehennum--您能给我一个关于如何在这种情况下使用cts:max()
的示例吗。