2016-09-30 4 views
0

私は次の質問をしています: ソート時にタイブレーカーとして特定の定数値を使用する方法はありますか?ここでSort:他の文書の前に著者の文書を入手してください

は私の例です:

はインデックス構造を仮定します

{ 
    title: "Title", 
    author: "Name of author" 
} 

たちは、次の検索クエリを持って言う:http://example.cloudsearch.amazonaws.com/2013-01-01/search?q=test&return=_all_fields%2C_score&sort=_score%20desc

問題は同じで10の文書がある場合、私が持っていますtitle "test"彼らはすべて同じスコアを持っていますが、私はこれらのドキュメントを並べ替え、現在の著者が作成したドキュメントを一番上に持っていきたいと思います。表現を使用しようとしましたが、動作させることができませんでした。これは私が試したものです:

http://example.cloudsearch.amazonaws.com/2013-01-01/search?q=test&return=_all_fields%2C_score&sort=_score%20desc,isauthor%20desc&expr.isauthor=(author%3D%3D%id)しかし、cloudsearchはそれを受け入れることはできません。検索文字列を使ってこれを解決する方法はありますか、数値の著者識別子のようなものをインデックスする必要はありますか?

答えて

0

誰かが興味があれば、これが私のやり方です。その後author_identifier私は、インデックスに各ユーザーに一意の整数の識別子を使用(私は数字に関連付ける必要がありましたように、ユーザーIDはGUIDがあったため取得するための別の課題でした

:新しいインデックスフィールドを作成し

私はソート式を使用しました:http://example.cloudsearch.amazonaws.com/2013-01-01/search?q=test&return=_all_fields%2C_score&sort=_score%20desc,isauthor%20desc&expr.isauthor=(author_identifer%3D%3D%mappedid)

これは理想的な解決策ではありませんでしたが、私が推測するものよりも優れています。

関連する問題