2017-03-02 16 views
0

私はESバージョン2.3を使用しています。ElasticSearch not_analyzedフィールドの動作に一貫性がありません

{ 
"BUSINESSLINE" :"ABC CORP", 
"NAME" : "John" 
.... 
... 
} 

フィールドBUSINESSLINEがnot_analyzed文字列です:私はこのような構造を持っている、インデックス、いくつかの書類を持っています。

{ 
     "query": { 
     "multi_match" : { 
      "query": "ABC", 
      "fields": [ "_all" ] 
     } 
     } 
    } 

しかし、この1つは(それがヒットを示していない!)しません:

問題は、このクエリが結果を返すことである

{ 
     "query": { 
     "multi_match" : { 
      "query": "ABC", 
      "fields": [ "BUSINESSLINE " ] 
     } 
     } 
    } 

すべてのヘルプは高く評価され、私はグーグルしようとしました研究していますが、私はこれに何らかの理由を見つけることができません。 ありがとう!

+0

文書内の他のフィールドにこの( 'ABC'または 'abc'または' Abc')という単語が含まれているかどうか確認できますか? – avr

+0

いいえ、BUSINESSLINEと一致していますが、私はここで_sourceを共有できませんが、 "BUSINESSLINE" –

答えて

0

はい、正しいです。クエリは、_all filedのために文書に一致します。これは、すべてのフィールドをスペース区切り記号で連結して作成した大きな文字列です。また、analysedであるため、照会が照合されています。

詳しくはhereをご覧ください。