在xquery中查找非词典值的频率

时间:2016-10-04 11:15:07

标签: xquery marklogic marklogic-8

有没有办法找到没有范围索引的元素的频率?

我使用的

float calc(DATA *p,float media, float max, float min) { int a; max=0; min=20; 不支持任何不是词典的元素

1 个答案:

答案 0 :(得分:5)

您需要某种类型的索引才能获得计数。除了范围索引之外,这里还有一个使用单词词典的方法:

for $word in cts:element-words(xs:QName("city"))
return 
  $word || " " || 
  xdmp:estimate(
    cts:search(
      fn:doc(), 
      cts:element-word-query(xs:QName("city"), $word)))

了解如果您有多字值,这种方法可能无法为您提供所期望的值。例如,如果你有< city>旧金山< / city>和< city>圣地亚哥< / city&gt ;,你会得到以下数据:

  • san:2
  • francisco:1
  • diego:1

为了获得准确的,基于价值的计数,范围指数是您最好的选择。