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

Lucene - Cannot find value in field via query

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

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

但是当我尝试在这个索引中搜索时,lucene returns 没有结果。我尝试了这些查询:

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

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

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

当我只使用 StoredField 时,值会被存储,但不会被索引。卢克在撒谎,该值已编入索引。将该值索引到字段(使用 StringField 或 Double/LongPoint)后,搜索有效。