Solr短语搜索多值字段

时间:2018-12-17 08:42:44

标签: solr

我正在使用JSON请求和edismax适配器进行SOLR搜索。 我想搜索多值字段,因为它会单独存储,因此会处理多值字段中的值。

这些是我的配置中的一部分:

<field name="title" ... />
<field name="tags" stored="false" type="tag_type" multiValued="true" indexed="true"/>

<fieldType name="tag_type" class="solr.TextField" omitNorms="false" positionIncrementGap="100" autoGeneratePhraseQueries="true">
  <analyzer type="index">
    <tokenizer class="solr.StandardTokenizerFactory"/>
    <filter class="solr.StandardFilterFactory"/>
    <filter class="solr.LowerCaseFilterFactory"/>
  </analyzer>

  <analyzer type="query">
    <tokenizer class="solr.StandardTokenizerFactory"/>
    <filter class="solr.StandardFilterFactory"/>
    <filter class="solr.LowerCaseFilterFactory"/>
  </analyzer>
</fieldType>

例如,如果我有这些数据:

[{
    id: 1,
    title: "Sport - News",
    tags: ["sport football germany", "news 2018", "abcde"]
},
{
    id: 2,
    title: "Education News",
    tags: ["education", "school", "sport", "abcde", "football", "germany"]
}]

我想实现在搜索“德国运动”时仅返回ID为1的文档的行为。

您有什么建议吗?

0 个答案:

没有答案