2

ElasticSearch を使用して、特定の文字列を含むすべてのレコードを検索しようとしています。これには一致クエリを使用していますが、正常に機能しています。

今、特定のフィールドに基づいて結果を並べ替えようとしています。これを試してみると、非常に予期しない出力が得られ、どのレコードにも最初の検索クエリが含まれていません。

私のリクエストは次のように構成されています。

{
"query": 
{
    "match": {"_all": "some_search_string"}
 },
 "sort": [
 {
    "some_field": {
        "order": "asc"
        }
 }
 ] }

ここで何か間違ったことをしていますか?

4

1 に答える 1

1

文字列フィールドで並べ替えるには、マッピングにこのフィールドの分析されていないバージョンが含まれている必要があります。これは、 multi_field マッピング タイプを使用してこれを行う方法を説明している、私が見つけた簡単なブログ投稿です。

于 2013-06-24T16:53:17.307 に答える