2016-10-13 8 views
0

私は、そのコメントdonotがStringで始まるレコードだけを返す必要があるという要件があります。 PFBクエリとこのアプローチは動作していません。elasticsearch 2.xで 'Starts with'検索を実装する方法

{ 
    "size": 0, 
    "fields": ["id","comment"], 
    "query": { 
    "bool": { 
     "must_not": [ 
     { 
      "wildcard": { 
      "comment": 
       "AG//*" 
      } 

     } 
     ] 
    } 
    } 
} 
+0

マッピングを提供できますか?コメントフィールドnot_analyzedですか? – ChintanShah25

答えて

0

まずヘルプが必要です、あなたは結果を見るためにあなたのクエリ(または設定に必要なサイズ)から"size": 0を削除する必要があります。

次のように今、elasticsearchに「と開始」を実施するための最良の方法は、Prefix Queryを使用することです:

{ 
    "fields": ["id", "comment"], 
    "query": { 
     "bool": { 
     "must_not": [ 
      { 
       "prefix": { 
        "comment": "AG" <-- No need for any wildcards 
       } 
      } 
     ] 
     } 
    } 
} 

注:プレフィックス問合せおよびワイルドカードクエリのみnot_analyzedに理にかなっていますフィールドの場合は、"comment"フィールドに同じマッピングが設定されていることを確認してください。

関連する問題