私はSolrリクエストを作成しており、ドキュメントのIDをfqパラメータに渡しています。 Solrは、ドキュメントのスコアでソートされたドキュメントを返します。私はSolrにIDを送ったのと同じ順序でドキュメントを返すようにします。クエリに渡すことができるソート順はありますか?
ソートパラメータには、希望の結果を得るために与えることができる値があります。
私はSolrリクエストを作成しており、ドキュメントのIDをfqパラメータに渡しています。 Solrは、ドキュメントのスコアでソートされたドキュメントを返します。私はSolrにIDを送ったのと同じ順序でドキュメントを返すようにします。クエリに渡すことができるソート順はありますか?
ソートパラメータには、希望の結果を得るために与えることができる値があります。
fqに渡す代わりに。エレベーターコンポーネントを使用します。かかわらず、Solrのスコア値の
編集elevate.xmlのごSolrのconfフォルダ内のファイルと
<query text="ipod">
<doc id="S03" />
<doc id="S01" />
<doc id="S02" />
</query>
、それはあなたがelevate.xmlファイルで与えられた方法を順にドキュメントを返します。
または
edismaxでbq(Boosting)パラメータを使用します。 例:
defType=edismax&q="ipod"&bq=id:S03^4+id:S02^3+id:S01^
デフォルトのソート順 - 何のソートが設けられていないと、すべてのスコアが類似する(あるいは単にfq
年代を使用しているされている場合 - 内部のLucene IDでなければなりません - あなたが戻って順番に文書を取得する必要があります意味。。彼らはあなたがsort=_docid_ asc
を使用して明示的にこれを求めることができます
を
を追加しました。しかし、これは本当に重要である場合いる - 更新された場合に文書が並べ替えを取得し、あなたは、元のソート順を維持することができますように、追加します文書が追加された時刻を記録するためのフィールドそのフィールドによって
サンプルクエリ: 'localhost:8983/solr/collectionname/elevate?q = ipod' – vinod
elevate.xmlファイルを編集できません。オプションではありません。コードを介して行う必要がある –
私は私の答えを編集しました。そのようにしてください。ブースト値をあなたに合わせて変更してください。 – vinod