現在、solr grouping(http://wiki.apache.org/solr/FieldCollapsing )は、グループを「各グループ内の最上位ドキュメントのスコアで」ソートします。例えば
[...]
"groups":[{
"groupValue":"81cb63020d0339adb019a924b2a9e0c2",
"doclist":{"numFound":9,"start":0,"maxScore":4.729042,"docs":[
{
"id":"7481df771afe39fab368ce19dfeeb528",
[...],
"score":4.729042},
{
"id":"c879e95b5f16343dad8b1248133727c2",
[...],
"score":4.6635237},
{
"id":"485b9aec90fd3ef381f013c51ab6a4df",
[...],
"score":4.347174}]
}},
[...]
代わりに、各グループ内のドキュメントのスコアの合計でグループを並べ替える、すぐに使用できる方法はありますか?例えば
[...]
"groups":[{
"groupValue":"81cb63020d0339adb019a924b2a9e0c2",
"doclist":{"numFound":9,"start":0,"scoreSum":13.739738,"docs":[
{
"id":"7481df771afe39fab368ce19dfeeb528",
[...],
"score":4.729042},
{
"id":"c879e95b5f16343dad8b1248133727c2",
[...],
"score":4.6635237},
{
"id":"485b9aec90fd3ef381f013c51ab6a4df",
[...],
"score":4.347174}]
}},
[...]
関数クエリによるソートのリリース(https://issues.apache.org/jira/browse/SOLR-1297 )により、sum()関数( http:// wiki)を使用する方法があるはずです。 apache.org/solr/FunctionQuery)。ただし、「スコア」フィールドはドキュメントの一部ではないため、十分に近いものではありません。
近くにいるような気がしますが、明らかな部分が欠けています。Solr3.5を使用しています。