Solr - 范围滤波器无法正常工作

时间:2012-10-16 21:13:54

标签: solr

我从solr开始,陷入一种奇怪的行为。我有一个多值字段:

<field name="facet_age_filter" type="text" indexed="true" multiValued="true" stored="false" omitNorms="true"/>

此字段包含0到12之间的值,我建立我的查询,如下所示:

http://localhost:8080/select?indent=on&q=BA048*&fq=facet_age_filter:[0 TO 3]

问题是,在我的结果中,我得到的结果并不是过滤查询的结果。即:4至12的样本

有什么想法吗?

正如我所说的,我从solr开始,指出我是不是做了一些非常愚蠢的事情,或者我是否可以在文档中找到解决方案(我无法在wiki中找到任何内容) )。

编辑: 感谢您的评论。

将字段更改为Integer:

<fieldType name="integer" class="solr.IntField" omitNorms="true"/>
<field name="facet_age_filter" type="integer" indexed="true" multiValued="true" stored="true" omitNorms="true"/>

将其更改为存储要在查询响应中显示的结果。

如果我按照nickdos的说法进行过滤,它的工作正常。但我仍然得到超出范围的结果。

同一查询的示例查询结果:

  {
    "cod":"BA048555",
    "facet_age_filter":[1,8]},
  {
    "cod":"BA048444",
    "facet_age_filter":[4,12]},

这是对的吗?括号中的这些值?

感谢,

0 个答案:

没有答案