WARNING: The 2.x versions of Elasticsearch have passed their EOL dates. If you are running a 2.x version, we strongly advise you to upgrade.
This documentation is no longer maintained and may be removed. For the latest information, see the current Elasticsearch documentation.
Finding Children by Their Parentsedit
While a nested
query can always return only the root document as a result,
parent and child documents are independent and each can be queried
independently. The has_child
query allows us to return parents based on
data in their children, and the has_parent
query returns children based on
data in their parents.
It looks very similar to the has_child
query. This example returns
employees who work in the UK:
GET /company/employee/_search { "query": { "has_parent": { "type": "branch", "query": { "match": { "country": "UK" } } } } }
The has_parent
query also supports the score_mode
, but it accepts only two
settings: none
(the default) and score
. Each child can have only one
parent, so there is no need to reduce multiple scores into a single score for
the child. The choice is simply between using the score (score
) or not
(none
).