| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 | [[query-dsl-has-child-query]]=== Has Child QueryThe `has_child` filter accepts a query and the child type to run against, andresults in parent documents that have child docs matching the query. Here isan example:[source,js]--------------------------------------------------GET /_search{    "query": {        "has_child" : {            "type" : "blog_tag",                "query" : {                    "term" : {                        "tag" : "something"                    }                }        }    }}--------------------------------------------------// CONSOLE[float]==== Scoring capabilitiesThe `has_child` also has scoring support. Thesupported score modes are `min`, `max`, `sum`, `avg` or `none`. The default is`none` and yields the same behaviour as in previous versions. If thescore mode is set to another value than `none`, the scores of all thematching child documents are aggregated into the associated parentdocuments. The score type can be specified with the `score_mode` fieldinside the `has_child` query:[source,js]--------------------------------------------------GET /_search{    "query": {        "has_child" : {            "type" : "blog_tag",                "score_mode" : "min",                "query" : {                    "term" : {                        "tag" : "something"                    }                }        }    }}--------------------------------------------------// CONSOLE[float]==== Min/Max ChildrenThe `has_child` query allows you to specify that a minimum and/or maximumnumber of children are required to match for the parent doc to be considereda match:[source,js]--------------------------------------------------GET /_search{    "query": {        "has_child" : {            "type" : "blog_tag",            "score_mode" : "min",            "min_children": 2, <1>            "max_children": 10, <1>            "query" : {                "term" : {                    "tag" : "something"                }            }        }    }}--------------------------------------------------// CONSOLE<1> Both `min_children` and `max_children` are optional.The  `min_children` and `max_children` parameters can be combined withthe `score_mode` parameter.[float]==== Ignore UnmappedWhen set to `true` the `ignore_unmapped` option will ignore an unmapped `type`and will not match any documents for this query. This can be useful whenquerying multiple indexes which might have different mappings. When set to`false` (the default value) the query will throw an exception if the `type`is not mapped.
 |