PLEASE NOTE:
We are working on updating this book for the latest version. Some content might be out of date.
We are working on updating this book for the latest version. Some content might be out of date.
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
).