我有一个字段在Solr的schema.xml中被索引为字符串,该字段来自mysql数据库中的boolean(tinyint)列.
在查询中,我使用1搜索此字段.但是没有任何更改,此查询无法返回正确的结果.在我使用true而不是1之后,它再次起作用.现在它再次出错但是真的没问题1.
这里的确切问题是什么?我是否需要将schema.yml中的字段类型更改为整数?
先感谢您.
由于它是一个字符串字段,我们不可能知道你如何索引它.它可能是"真"/"假"或"1"/"0"或"开"/"关"等.或者甚至是这些的混合,也许你有一些文件有"真"而有些文件有"1" ".
如果它在语义上是一个布尔字段,我建议使用boolean fieldType,例如:
<field name="inStock" type="boolean" indexed="true" stored="true" />
Run Code Online (Sandbox Code Playgroud)
为此,您需要声明布尔字段类型(它在默认架构中声明):
<fieldType name="boolean" class="solr.BoolField" sortMissingLast="true" omitNorms="true"/>
Run Code Online (Sandbox Code Playgroud)
请记住在此更改后重建索引.
| 归档时间: |
|
| 查看次数: |
3705 次 |
| 最近记录: |