在 SOLR 中,我想定义一个按字母顺序获取结果的字段。所以,如果我搜索“S”,它只会给我带来以 S 开头的结果(我在一个字段上搜索)。
这就是我试图定义它的方式,但是,它也给我带来了不以“S”开头的结果
<fieldType name="text_general_edge_ngram" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.LowerCaseTokenizerFactory"/>
<filter class="solr.EdgeNGramFilterFactory" minGramSize="1" maxGramSize="5" side="front"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.LowerCaseTokenizerFactory"/>
</analyzer>
</fieldType>
我使用的查询:
http://MySERVER/solr/content/select/?q=alpha_title:s&start=0&rows=15
在我看来,我应该使用 ngrams 标记器而不是过滤器。将测试和更新。