2017-03-20 19 views
0

複数のmatch_phrase_prefixクエリをチェーンしようとしましたが、何らかの理由で が結果を返しません(エラーもありません)。私がちょうど を試してみると、match_phrase_prefixはすべてうまく動作します。私は、弾性検索バージョン2.3を使用していますし、私のクエリは次のようになります。ElasticSearchでmatch_phrase_prefixをチェーンできません

"query": { 
    "bool": { 
     "must": [ 
      { 
       "match_phrase_prefix": { 
        "title": "נפ" 
       } 
      }, 
      { 
       "match_phrase_prefix": { 
        "sub_title": "נפצ" 
       } 
      } 
     ] 
    } 
} 

特定のインデックスのための私のマッピングは次のとおりです。

{ 
"wcm_articles": { 
    "mappings": { 
    "article": { 
     "properties": { 
      "approved_talkbacks_counter": { 
       "type": "integer" 
      }, 
      "article_link": { 
       "type": "string", 
       "index": "not_analyzed" 
      }, 
      "author": { 
       "type": "string", 
       "analyzer": "hebrew" 
      }, 
      "category_id": { 
       "type": "string", 
       "index": "not_analyzed" 
      }, 
      "date_updated": { 
       "type": "date", 
       "format": "date_hour_minute_second" 
      }, 
      "is_old": { 
       "type": "boolean" 
      }, 
      "is_promoted": { 
       "type": "boolean" 
      }, 
      "is_video": { 
       "type": "boolean" 
      }, 
      "last_update_user": { 
       "type": "string", 
       "index": "not_analyzed" 
      }, 
      "launch_date": { 
       "type": "date", 
       "format": "date_hour_minute_second" 
      }, 
      "plain_text": { 
       "type": "string", 
       "analyzer": "hebrew" 
      }, 
      "promotion_notes": { 
       "type": "string", 
       "index": "not_analyzed" 
      }, 
      "status": { 
       "type": "string", 
       "index": "not_analyzed" 
      }, 
      "sub_title": { 
       "type": "string", 
       "analyzer": "hebrew" 
      }, 
      "tags": { 
       "type": "string", 
       "index": "not_analyzed" 
      }, 
      "title": { 
       "type": "string", 
       "analyzer": "hebrew" 
      }, 
      "type": { 
       "type": "string", 
       "index": "not_analyzed" 
      }, 
      "waiting_talkbacks_counter": { 
       "type": "integer" 
      } 
     } 
    } 
    } 

} }

そして、いくつかの例文書は、次のとおりです。

"_index": "wcm_articles", 
     "_type": "article", 
     "_id": "2828280", 
     "_score": 2.5246792, 
     "_source": { 
      "tags": [], 
      "category_id": 3, 
      "sub_title": "", 
      "promotion_notes": "", 
      "is_old": false, 
      "last_update_user": "", 
      "status": 1, 
      "type": "article", 
      "plain_text": "", 
      "launch_date": null, 
      "waiting_talkbacks_counter": 0, 
      "approved_talkbacks_counter": 0, 
      "is_video": false, 
      "article_link": "", 
      "date_updated": "2016-12-05T15:12:10", 
      "title": "קשישה כבת 80 נפצעה קשה מפגיעת רכב בחולון ", 
      "author": "", 
      "is_promoted": false 

"_index": "wcm_articles", 
     "_type": "article", 
     "_id": "2829275", 
     "_score": 2.1283152, 
     "_source": { 
      "tags": [], 
      "category_id": 3, 
      "sub_title": "", 
      "promotion_notes": "", 
      "is_old": false, 
      "last_update_user": "", 
      "status": 1, 
      "type": "article", 
      "plain_text": "", 
      "launch_date": null, 
      "waiting_talkbacks_counter": 0, 
      "approved_talkbacks_counter": 0, 
      "is_video": false, 
      "article_link": "", 
      "date_updated": "2016-12-05T15:12:16", 
      "title": "רוכבת אופנוע נפצעה קשה בתאונת דרכים בצומת סירקין בפ\"ת", 
      "author": "", 
      "is_promoted": false 
+0

マッピングをいくつかのデータサンプルで共有できますか? –

答えて

0

問題が解決しました。クエリを連鎖させることに問題はなかった。私は正しい方法で "match_phrase_prefix"を使用していませんでした。単語が1つの場合にのみ、1つの単語で作業することはありません。1つの単語に対して、オートコンプリート検索の目的のための正しいクエリ単語の一部を含み、単語全体ではない)は「接頭辞」である。これらの2つの組み合わせを連鎖させて、それぞれに正しく使用すると、全く問題はありません。

似たような問題を抱えている人に役立ちます。

+0

修正後のクエリはどのように見えますか? –

+0

数時間後に投稿します –

関連する問題