2017-11-15 39 views
0

私のクエリで正しく動作するように並べ替えを取得することに問題があります。私は非常に簡単な例を試して、予期せぬ結果を得ました。Elasticsearch並べ替え順序

{ 
    "query": { 
    "match_all": {} 
    }, 
    "sort": "name" 
} 

結果

クエリ内の番号と名前がないものよりも高いものであることです。たとえば、Eurosport 1Animal Planetより前になります。

"sort": [ 
    "1" 
] 

"sort": [ 
    "a" 
] 

それぞれについて返さいただきましたです。

並べ替えのためにフィールドを並べ替えるために何か特別な処理が必要ですか?

私はそれ以上の回答を投稿できます。

答えて

0

これは、フィールドのインデックスが分析されたかどうかによって、弾性検索の動作が異なるように見えます。私の場合、それは分析されたので、 "Eurosport 1"を空白と2つの単語のために扱っていました。

analyzed or not_analyzed, what to choose

関連する問題