Я использую Elasticsearch 2.4. Как мне написать запрос для отображения результата в виде поля с наибольшим значением повышения первым.
Я объясню это немного подробнее, тогда каждый сможет легко понять, какова моя цель.
У меня есть поля, такие как заголовок, контент, URL и т. Д.
Я ищу по ключевому слову типа "Тест" в полях "заголовок" и "контент".
Я хочу показать результат таким образом, чтобы запись с полем заголовка с моим желаемым ключевым словом «Тест» должна была показываться первой. После отображения полного списка записи с заголовком отображается только содержимое с поиском по ключевому слову «Тест».
Возможно ли это в Elastic-поиске? Если так, как я могу это сделать?
Мой пример запроса приведен ниже, но я не получил результат, как ожидалось.
{
"query": {
"filtered": {
"query": {
"bool": {
"should": [
{
"query_string": {
"default_field": "title",
"query": "Test",
"boost": 3
}
},
{
"query_string": {
"default_field": "content",
"query": "Test",
"boost": 2
}
}
],
"minimum_should_match": 1
}
}
}
}
}
Было бы замечательно, если бы кто-нибудь мог помочь исправить мой запрос для получения желаемого результата, как я объяснил выше.
Заранее спасибо!