我需要在schema.xml中编写什么来搜索Solr中的两个或多个字段?

时间:2013-05-08 11:43:49

标签: php mysql apache solr

我是索尔的新人。 我已将MySql中的3个字段编入索引。 Id,first_name,last_name。 我想在first_name和last_name中搜索。 在schema.xml中,我写道:

<fields>
<field name="id" type="string" indexed="true" stored="true"/>
<field name="first_name" type="text_general" indexed="true" stored="true"/>
<field name="last_name" type="text_general" indexed="true" stored="true"/>
</fields>
<uniqueKey>id</uniqueKey>
<defaultSearchField>first_name</defaultSearchField>
<solrQueryParser defaultOperator="OR"/>

我必须在这里写一下首先在first_name中搜索,然后在last_name中搜索。 在哪里我必须优先考虑领域? 求你帮帮我。

1 个答案:

答案 0 :(得分:1)

您必须在查询中定义此内容。我建议您使用请求处理程序:

<requestHandler name="bcn_jug_en" class="solr.SearchHandler" enable="true">
 <lst name="defaults">
   <str name="defType">edismax</str>
   <str name="qf">first_name^10 last_name^5</str>
   <str name="mm">100%</str>
</lst>

http://searchhub.org/2010/05/23/whats-a-dismax/