2017-01-15 3 views
0

Я использовал многоракурсную фразу, когда делаю поиск. Однако я должен поставить предельный результат всей математической фразы отдельно. Я имею в виду, я хочу получить только 2 результата для каждого мульти-матча. Я не могу найти атрибуты предела/размера. Знаете ли вы какое-либо решение?Как ограничить результаты в многозадачном запросе?

Пример код:

"query": { 
"bool": { 
    "should": [ 
    { 
     "match_phrase": { 
     "text": { 
      "query": " Home is clear and big ", 
      "slop": 2 

    } 
} 
}, 
    { 
    "match_phrase": { 
    "text": { 
     "query": "365 different company use our system in test", 
     "slop": 2 

    } 
} 
} 

]}} 

ответ

0

Самое простое решения сделать индивидуальный поиск для каждого из условий. Параметр size может быть установлен для получения только первых двух результатов для каждого запроса.

https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-from-size.html

Логический should запрос не будет различать, какое условие было удовлетворено: она возвращает документы, для которых выполняется хотя бы один из двух условий. Оценки для этих двух матчей будут объединены в один балл, но это будет невозможно сказать, какой S

0

использование

{"limit" : 3, "from":0, "query": ...} 
+0

его не не работает :( –

Смежные вопросы