Sorting 要使SOLR中的字段可排序,我需要做什么?
我有一个名为“标题”的字段 这意味着我的语法可能是正确的:Sorting 要使SOLR中的字段可排序,我需要做什么?,sorting,solr,lucene,xsd,solr-schema,Sorting,Solr,Lucene,Xsd,Solr Schema,我有一个名为“标题”的字段 这意味着我的语法可能是正确的: q="course"&start=0&rows=15&version=2.2indent=true&wt=json&sort=Title%2Basc&sort=title+asc 问题是,结果不会按[title]字段排序返回。我想schema.xml文件中缺少了一些内容,但是什么?供将来参考: 排序依据的字段不应“太”标记化… 通常,您可以对任何单
q="course"&start=0&rows=15&version=2.2indent=true&wt=json&sort=Title%2Basc&sort=title+asc
问题是,结果不会按[title]字段排序返回。我想schema.xml文件中缺少了一些内容,但是什么?供将来参考:
排序依据的字段不应“太”标记化…通常,您可以对任何单值字段(即,未标记化的字段(除非它使用产生单项的分析器)或多值字段)进行排序,并编制索引。因此,
text
和text.*
字段可以进行排序。您说的“按标题排序”是什么意思?您可以按日期(例如,最新的第一个)、数字(例如,最大的第一个)或字母顺序(考虑到unicode字符,逐个字符)进行排序。如何对多词标题进行排序?
<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" />
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.PhoneticFilterFactory" encoder="DoubleMetaphone" inject="true"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" />
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.PhoneticFilterFactory" encoder="DoubleMetaphone" inject="true"/>
</analyzer>
</fieldType>
INFO: [] webapp=/solr path=/select/ params={sort=title+asc&start=0&q="course"&wt=json&rows=15&version=2.2indent%3Don} hits=244 status=0 QTime=1
q="course"&start=0&rows=15&version=2.2indent=true&wt=json&sort=Title%2Basc&sort=title+asc