我们的索引有一个联接字段(具有许多子项的父文档)。我们希望搜索子项,并使用过滤器将父文档中的数字与子文档中的数字相加。 是否可以访问过滤器脚本中的父字段?如果是这样,我们该怎么做?需要最新版本的ES吗?
我们使用ElasticSearch 6.6。我们已经尝试过使用has_parent,inner_hits和script_fields,但是我们无法在同一脚本中访问父级和子级的信息。
答案 0 :(得分:0)
针对您的子类型执行搜索查询,并使用has_parent
过滤父字段
GET data/ChildTypeName/_search
{
"query": {
"bool": {
"filter": {
"has_parent": {
"parent_type": "ParentTypeName",
"query": {
"match": {
"my_parent_field": "my_parent_field_value"
}
},
"inner_hits" : {}
}
}
}
}
}