【问题标题】:Comparision between "cts.values" and "cts.elementValues" [closed]“tcs.values”和“cts.element Values”之间的比较[关闭]
【发布时间】:2020-02-24 11:13:36
【问题描述】:

我可以看到cts.valuescts.elementValues 有类似的用途。

那么,两者在性能方面有什么区别呢?哪个效率更高?

【问题讨论】:

标签: xquery marklogic marklogic-9 marklogic-dhf multi-model-database


【解决方案1】:

他们应该执行相同的操作。这两个函数都提供了一种查询词典(范围索引)的方法。

对于cts.values(),第一个参数是cts.reference[]。因此,这意味着您可以提供任何cts.reference 类型:cts.elementReferencects.elementAttributeReferencects.fieldReferencects.jsonPropertyReferencects.pathReference,以及cts.collectionReferencects.uriReference

对于cts.elementValues() 查询,第一个参数是元素的xs.QName[],而不是cts.reference[]

这些其他词典值函数在参数上有类似的差异,但实际上也是调用cts.values()的不同方式:

【讨论】:

  • 小补充:更具体的cts.elementValues e.a 是原始函数名称。随着时间的推移,越来越多的索引类型被添加,并且在某些时候提供一个更通用的cts.values 来代替引用是有意义的。 cts.elementRangeQuerycts.rangeQuery 的类似故事。如果我没记错的话,大约在同一时间添加了cts.valueTuples,这允许传入引用的随机组合,而不是更严格的cts.elementValueCoOccurrences e.a..
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多