Solr:4.8.1,我有一个名为 age 的字段,它存储像 A 或 C 这样的单个字符,并且存储的是字段
<field name="age" type="text_general" indexed="true" stored="true"/>
当我从其他搜索中获取结果时,我可以看到字段年龄及其值,但是当我搜索例如age:*
它返回 0 个结果时。这只是最近发生的,因为我已经在这个领域工作了一个月,它工作得很好,但现在没有任何回报。我改变了几次架构,但没有关于这个领域。我唯一能想到的是,我不小心将一个无效值放入了我从中导入的 mysql 数据库的年龄字段中,但修复了它并重新导入了它。
我搜索了这个问题,发现<defaultSearchField>
需要设置,但这些结果较旧,并且该字段现在已折旧。
编辑:
我的数据配置是:
<dataConfig>
<dataSource type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost/gtw"
user="root"
password=""/>
<document>
<entity name="id" query="select id,price,title,description,main_image,retailer,link,age,gender,type,category,creation_date from solr_listings">
<field column="category" name="category" splitBy=","></field>
</entity>
</document>
</dataConfig>
与默认示例架构唯一不同的是我在下面添加的字段:
<field name="id" type="string" indexed="true" stored="true" required="true" multiValued="false" />
<field name="title" type="text_general" indexed="true" stored="true" />
<field name="description" type="text_general" indexed="true" stored="true"/>
<field name="retailer" type="text_general" indexed="true" stored="true"/>
<field name="category" type="text_general" indexed="true" stored="true" />
<field name="main_image" type="text_general" indexed="true" stored="true"/>
<field name="last_modified" type="date" indexed="true" stored="true"/>
<field name="link" type="string" indexed="true" stored="true" />
<field name="gender" type="text_general" indexed="true" stored="true"/>
<field name="age" type="text_general" indexed="true" stored="true"/>
<field name="type" type="text_general" indexed="true" stored="true" />
<field name="creation_date" type="date" indexed="true" stored="true" />
<field name="price" type="float" indexed="true" stored="true"/>