2014-12-29 11 views

risposta

19

bool è destinato a essere utilizzato per club di varie query insieme in una singola query bool. È possibile utilizzare bool per combinare più query in questo modo -

{ 
    "query": { 
    "bool": { 
     "must": [ 
     { 
      "query_string": { 
      "query": "field:text" 
      } 
     }, 
     { 
      "match": { 
      "field": "text" 
      } 
     } 
     ] 
    } 
    } 
} 

La clausola deve farà in modo che tutte le condizioni sono abbinati. Si può anche usare dovrebbe che si assicuri che una delle query sia abbinata nel caso in cui solo dovrebbe essere usato.

Come bool è solo un altro tipo di query, si può anche query di club bool all'interno query bool come segue -

{ 
    "query": { 
    "bool": { 
     "must": [ 
     { 
      "bool": { 
      "must": [ 
       { 
       "query_string": { 
        "query": "field:text" 
       } 
       }, 
       { 
       "match": { 
        "field": "value" 
       } 
       } 
      ] 
      } 
     }, 
     { 
      "match": { 
      "field": "text" 
      } 
     } 
     ] 
    } 
    } 
} 
Problemi correlati