#elasticsearch
#elasticsearch
Вопрос:
Возможно ли увеличить поле в запросе такой формы?
"query": {
"filtered": {
"query": {
"query_string": {
"query": "the user's search query",
"fields": ["name", "description"],
"default_operator": "OR"
}
},
"filter": {...}
}
}
Комментарии:
1. вы хотите увеличить только одно поле? нравится только «имя»? если вы добавите свойство boost ниже default_operator, вы сможете загрузить запрос
2. Я хочу увеличить только одно поле. Принятый ответ ниже делает именно это. 🙂
Ответ №1:
Да, просто добавьте синтаксис boost в поле (name ^ 5), например:
"query": {
"filtered": {
"query": {
"query_string": {
"query": "the user's search query",
"fields": ["name^5", "description"],
"default_operator": "OR"
}
},
"filter": {...}
}
}
Кажется довольно ясным в документах:
http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-query-string-query.html
Комментарии:
1. Если запрос соответствует полю с меньшим значением увеличения, т.Е. 2 (когда у нас есть другие поля со значением увеличения, равным 5) и не имеет совпадения ни в одном из других полей, запрос simple_query_string не возвращает никакого значения, сможете ли вы объяснить, почему?