通配符查詢不會進行任何分析。
因此,當您使用通配符搜索6205-2RS
時,它將按原樣進行搜索,而不需要像小寫過濾器,worddelimiters那樣的任何分析。
什麼是該領域的模式定義。它是一個文本字段還是一個字符串字段類型?
爲text_general的定義如下 -
<fieldType name="text_general" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" />
<!-- in this example, we will only use synonyms at query time
<filter class="solr.SynonymFilterFactory" synonyms="index_synonyms.txt" ignoreCase="true" expand="false"/>
-->
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" />
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
在索引時間6205-2RS的標記生成器和下殼體濾波器在分析將生成的令牌6205,2rs
由於沒有分析搜索過程中發生,它按原樣搜索6205-2RS,並且不會找到任何結果。
將字段類型更改爲字符串,並且應該與結果匹配。
該字段的類型是「text_general」 – krinn
感謝您的答案,我需要在改變類型後重新索引整個索引嗎?或者只是重新啓動apache solr? – krinn
如果更改字段類型,則需要重新索引。 – Jayendra