1

私は、その年齢に基づいて次の順序でソートされたsolr検索結果が好きで、60日ごとの範囲でグループ化されています。

  • {0 ~ 59 日、グループ内で無作為化}
  • {60 ~ 119 日、無作為化}
  • {120 ~ 179 日、無作為化}
  • ...

このドキュメントには、「date」のfieldTypeを持つ publishDateというフィールドがあります。ソート機能を使用してこれを行うことができるかどうかを考えていました(いくつかの疑似コードのみ):

sort=((Today - publishDate) / 60 ) asc, rand_## desc, score desc

また、実行可能な場合、これは現在の SOLR バージョンでのみサポートされていますか? 3.x または 4? 前もって感謝します。

4

1 に答える 1

1

上記の関数クエリRandomSortフィールドで述べたように、これは実行可能であり、3.x と 4.0 の両方をサポートしています 。

subdivms関数をチェックして、減算、除算、およびミリ秒を実行して日付範囲の値に到達し、ソートすることができます。
RandomSort フィールドを二次ソートとして使用してランダム化します。

于 2013-02-06T04:06:29.447 に答える