2011-10-17 16 views
6

がセカンダリとしてタイトル順に、私はスコア順に結果を表示したい、それが接続されていると定義Solrには、ソート予想通り

<field name="title" type="text" indexed="true" stored="true"/> 

とフィールド「タイトル」を持って動作しません。ソート。

ただし、sort=score desc, title ascと照会すると、結果がタイトルの昇順になるとは限りません。

提案がありますか?

答えて

15

複数値フィールドおよびトークン化フィールドではソートがうまく機能しません。

ドキュメント - フィールドがトークン化されていない(つまり、アナライザが存在しない)か、またはフィールドがトークン化されていない場合は、multiValued = "false" indexed = "true"フィールドでソートすることができます。ただ一つのタームを生成Analyzerを使用しています(すなわち:KeywordTokenizerを使用しています)フィールドタイプとして

http://wiki.apache.org/solr/CommonQueryParameters#sort

使用文字列と新しいフィールドにタイトルフィールドをコピーします。

<field name="title_sort" type="string" indexed="true" stored="false"/> 

<copyField source="title" dest="title_sort" /> 
関連する問題