solrを使用して、名前でデータセットを検索しています(例:「Dan」または「JoeSmith」)。クエリで指定された結果(編集:最後にワイルドカードを付けて)を、別のインデックス付きフィールドdouble_score(10.0または72.3など)で指定された順序で返したいのですが。私は現在、まったく機能しない次のものを持っています:
<!-- Note that the default search is on the field name -->
<requestHandler name="/scoresearch" class="solr.SearchHandler" default="true">
<!-- <lst name="invariants">
<str name="q">{!boost b=sum(double_score) defType=dismax v=$qq}</str>
</lst> -->
<lst name="defaults">
<str name="defType">dismax</str>
<str name="echoParams">explicit</str>
<int name="rows">10</int>
<!-- <str name="qq"></str> -->
<str name="qf">double_score</str>
<str name="debug">true</str>
<str name="q.alt">*:*</str>
</lst>
</requestHandler>
コメントを削除すると、検索は、実行したクエリがq.altに置き換えられ、double_scoreの値によってブーストされても機能します。これがq.altを置き換えなかった場合、それは望ましい効果になります。
また、名前のトークン化など、より興味深い可能性についてはまだ掘り下げていませんが、そうする予定です。したがって、考えられる提案/解決策がそれを排除するものであってはなりません。