2016-09-07 15 views
0

私はgrateが動作するクエリを持っています。どのように私は1つの条件を追加する必要があります。 「マーク済み」のフィールドも持つ文書を取得したい:クエリに条件を追加する

これは私のクエリです。

{ 
    "from": 0, 
    "size": 100, 
    "min_score": 0.6, 
    "query": { 
     "bool": { 
      "should": [ 
       { "multi_match" : { 
        "fields" : ["_all"], 
        "query" : " Test " , 
        "fuzziness" : "1.5" , 
        "prefix_length" : "2" 
       } 
      } 
      ], 
      "must": { "bool": { "must": [ 
       { "terms": { "language.id":["1"] }}, 
       { "term": { "forbidden":"false" }} 
     ] 
     }}} 
    }, "sort": [{ "_score": { "order": "desc"}} ] 
} 

私はshould節を両方の句の後に追加しようとしています。 この条件はどこに置くことができますか? 「真」:

答えて

0

はこれが私に「マーク」しているだけの文書をもたらします。この

{ 
    "query": { 
    "bool": { 
     "should": [ 
     { 
      "multi_match": { 
      "fields": [ 
       "_all" 
      ], 
      "query": " Test ", 
      "fuzziness": "1.5", 
      "prefix_length": "2" 
      } 
     } 
     ], 
     "must": [ 
     { 
      "terms": { 
      "language.id": [ 
       "1" 
      ] 
      } 
     }, 
     { 
      "term": { 
      "forbidden": "false" 
      } 
     }, 
     { 
      "term": { 
      "marked": "true" 
      } 
     } 
     ] 
    } 
    } 
} 
+0

を試してみてください。 私はこれが "should"である必要があると確信しています。しかし、どこでも試してみるとエラーが出るか、1つの文書だけが出ます。 – dontberude

+0

あなたは投稿した質問にそれを載せていませんでしたか?マークされた条件がなかったので、あなたは真と偽の両方を得ているに違いありません。私はあなたの質問を理解していないと思う – blackmamba

関連する問題