Я пытался запустить следующий запрос, но каждый раз, когда я запускаю его я получаю следующее сообщение об ошибке:Elasticsearch: Ожидаемое имя поля, но получил START_OBJECT
nested: ElasticsearchParseException[Expected field name but got START_OBJECT \"field_value_factor\"]; }]","status":400
Вот запрос:
{
"query": {
"function_score": {
"query": {
"bool": {
"should": [{
"match": {
"thread_name": "parenting"
}
}, {
"nested": {
"path": "messages",
"query": {
"bool": {
"should": [{
"match": {
"messages.message_text": "parenting"
}
}]
}
},
"inner_hits": {}
}
}]
}
}
},
"field_value_factor": {
"field": "thread_view"
}
}
}
Ах, спасибо большое! Теперь он не дает никаких ошибок, но есть ли способ отделить результаты thread_name и результаты message_text. После того, как я положил результат функции, результаты смешаны, возвращая message_text сначала, потому что он более популярен, чем результат, с ключевым словом в заголовке заголовка –
нет, вы не можете сделать такую вещь в одном запросе, но вы можете использовать повышение одно из полей для обеспечения результатов для этого поля всегда будет первым. –