2017-07-10 5 views
0

Ich möchte alle Dokumente, die mit den Worten übereinstimmen: Äpfel, Orangen und Ananas im Bereich Obst. Also im Grunde möchte ich etwas wie das:Übereinstimmendes Feld mit mehreren Werten

{ 
    "query":{ 
    "bool":{ 
     "must": [ 
     { 
      "match": { 
      "fruits": ["Apples","Oranges","Pineapples"] 
      } 
     } 
     ] 
    } 
    } 
} 

Wie erreiche ich das mit einem einfachen Trick so?

+0

https://www.elastic.co/guide/en/elasticsearch/guide/current/_finding_multiple_exact_values.html –

Antwort

0

You „Begriffe“ anstelle von „Match“

{ 
    "query": { 
     "terms": { 
     "fruits": [ 
      "apples", 
      "oranges", 
      "pineapples" 
     ] 
     } 
    } 
} 

Hinweis, die Dokumente erhalten verwenden können: Sie sollten die Werte klein geschrieben, weil „Begriffe“ Abfrage exakte Übereinstimmung finden und wenn kein Analysator Standard Analysator verwendet wird, (Standard Analyzer) wird von elasticsearch verwendet, während Textwerte indexiert werden, die die Werte vor der Indexierung niedriger lagen