提问者:小点点

Lucene-无法通过查询在字段中找到值


我是 lucene 的新手,我正在尝试在精确字段中查找所有具有精确值的文档。

在索引(使用luke)中可见,该字段__r_ani包含数值567248953

但当我尝试在这个索引中搜索时,lucene没有返回任何结果。我尝试了以下查询:

__r_ani:567248953
__r_ani:"567248953"
__r_ani:[* TO *]

是否可能,该字段有一个坏名称(以2个下划线字符开头)?或者有可能,该字段的配置不好?(标记化、索引、存储等……)?

编辑:我刚刚发现,我的同事正在将其索引为StoredField。我尝试将其索引为StringField,现在搜索就可以了。我仍然不明白,当它被索引为StoredField时,为什么我无法通过查询找到它。


共1个答案

匿名用户

当我只使用StoredField时,值被存储,但不被索引。卢克在撒谎,那个值被编入索引。将该值索引到字段后(使用StringField或Double/LongPoint ),搜索开始工作。