3

Solr インデックスからドキュメントを選択する必要があるプロジェクトに取り組んでいます。結果は、ランクと呼ばれるフィールドによって並べ替えられます。ただし、問題は、上位 3 つの結果がプレミアムの結果である必要があり、プレミアムのような別のフィールドで定義されていることです。

これで、たとえば次のようにして、結果をグループ化できることがわかりました。

group.query=rank[0 TO 100]

group.query=premium[1]

追加することでこれらの結果を制限できます

group.limit=LIMIT

ただし、この制限はすべてのグループに適用されます。

この制限を最初のグループにのみ適用して、プレミアムの結果が 3 つのドキュメントのみを返すように制限する方法はありますか?

4

1 に答える 1

5

そのためのオプションは表示されません。

プレミアム結果を常に返す必要がある場合、そのために group-by を使用するのは難しい場合があります。結果セット (「rows」パラメーターを使用して結果セットを特定の値に制限していると仮定) にプレミアム結果が含まれていない場合はどうでしょうか?

おそらく、それを非プレミアムクエリに分割し、「行」パラメーターと「行」= 3 のプレミアムクエリに LIMIT を使用する方が良いでしょうか?

ただの意見です!

保留中の 1 つのリクエストで複数のクエリを許可するリクエストがあります - https://issues.apache.org/jira/browse/SOLR-1093

于 2013-07-16T18:25:42.003 に答える