Solr中的默认查询字段是什么?

3
我是一名Solr的新手,遇到了一个问题。
在managed-schema中,每个fieldType定义都可以指定索引分析器和查询分析器,格式如下:
<fieldType name="text_en" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
  <tokenizer class="solr.StandardTokenizerFactory"/>
  <filter class="solr.StopFilterFactory" words="lang/stopwords_en.txt" ignoreCase="true"/>
  <filter class="solr.LowerCaseFilterFactory"/>
  <filter class="solr.EnglishPossessiveFilterFactory"/>
  <filter class="solr.KeywordMarkerFilterFactory" protected="protwords.txt"/>
  <filter class="solr.PorterStemFilterFactory"/>
</analyzer>
<analyzer type="query">
  <tokenizer class="solr.StandardTokenizerFactory"/>
  <filter class="solr.SynonymFilterFactory" expand="true" ignoreCase="true" synonyms="synonyms.txt"/>
  <filter class="solr.StopFilterFactory" words="lang/stopwords_en.txt" ignoreCase="true"/>
  <filter class="solr.LowerCaseFilterFactory"/>
  <filter class="solr.EnglishPossessiveFilterFactory"/>
  <filter class="solr.KeywordMarkerFilterFactory" protected="protwords.txt"/>
  <filter class="solr.PorterStemFilterFactory"/>
</analyzer>

当我进行“q:something”这样的查询时,如何指定“something”的字段,并且它的默认字段是什么?

1个回答

5
你会在请求处理程序中找到默认的搜索字段,你需要在conf/solrconfig.xml中检查它。
检查“df”参数。
<str name="df">_text_</str>

如果您想查询特定字段而不更改df值,则需要按以下格式指定查询:
fieldname:something

如果您的查询有多个令牌,可以将其指定为“,”。
fieldname:"something1 something2"

我明白了。非常感谢。 - vincenteof
@Baloo,你知道如何使用API更新queryHandler中的默认字段或字段吗? - ypriverol

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接