2012-02-05 22 views
3

私はSolrインデックスを持っていて、各ドキュメントはイベントの情報です。私のスキーマではスケジュールは日付型の多値フィールドです。 予定日が (多値フィールドの日付のいずれか)のドキュメントを将来的に、かつ現在の日付に最も近いものに昇格することができるのだろうか? DismaxクエリとSolrNetクライアントAPIを使用しています。多値日付フィールドのSolrブースト

答えて

5

ユーザーはSolr FunctionQuery - recipを使用できます。

例機能クエリ:

recip(ms(NOW/HOUR,_datefield_),3.16e-11,1,1) 

はまた、関連性のよくある質問読み:返信用http://wiki.apache.org/solr/SolrRelevancyFAQ#How_can_I_boost_the_score_of_newer_documents

+0

おかげで、それは複数値フィールドのために働くのでしょうか? – Reza

+0

まずフィールドで比較を実装していた場合、あなたはむしろいくつかの行としてそれを格納するだろうか? – aitchnyu

+1

日付を1つのみにしてイベントを保存する場合は、後でフィールドの折りたたみやグループ化を行う必要があります。一方、1つのイベントは1つの日付ともう1つの日付を持つことがあります。だから、日付を持つ最良の方法は、多値フィールドを使うことです。 – Reza

関連する問題