2017-01-18 4 views
0

У меня есть следующий запрос в моей ElasticSearch (я использую версию 1.6) приложения:Elasticsearch query_string в multi_match

{ 
    "query":{ 
     "span_multi":{ 
      "match":{ 
       "query_string": { 
        "fields": ["field_name"], 
        "query": "*term*" 
       } 
      } 
     } 
    } 
} 

и она отлично работает. Как только я добавить еще одно поле для параметра fields, как

{ 
    "query":{ 
     "span_multi":{ 
      "match":{ 
       "query_string": { 
        "fields": ["field_name", "another_field_name"], 
        "query": "*term*" 
       } 
      } 
     } 
    } 
} 

я получаю следующее сообщение об ошибке:

spanMultiTerm [match] must be of type multi term query 

Что я делаю неправильно? Как я могу исправить это с минимальным воздействием на мой первоначальный запрос?

ответ

1

Вы должны использовать мульти запрос соответствия:

{ 
    "multi_match" : { 
     "query": "*term*", 
     "fields": [ "field_name", "another_field_name" ] 
    } 
}