[[query-dsl-exists-query]] === Exists query ++++ Exists ++++ Returns documents that contain an indexed value for a field. An indexed value may not exist for a document's field due to a variety of reasons: * The field in the source JSON is `null` or `[]` * The field has `"index" : false` set in the mapping * The length of the field value exceeded an `ignore_above` setting in the mapping * The field value was malformed and `ignore_malformed` was defined in the mapping [[exists-query-ex-request]] ==== Example request [source,js] ---- GET /_search { "query": { "exists": { "field": "user" } } } ---- // CONSOLE [[exists-query-top-level-params]] ==== Top-level parameters for `exists` `field`:: Name of the field you wish to search. + While a field is deemed non-existant if the JSON value is `null` or `[]`, these values will indicate the field does exist: + * Empty strings, such as `""` or `"-"` * Arrays containing `null` and another value, such as `[null, "foo"]` * A custom <>, defined in field mapping [[exists-query-notes]] ==== Notes [[find-docs-null-values]] ===== Find documents missing indexed values To find documents that are missing an indexed value for a field, use the `must_not` <> with the `exists` query. The following search returns documents that are missing an indexed value for the `user` field. [source,js] ---- GET /_search { "query": { "bool": { "must_not": { "exists": { "field": "user" } } } } } ---- // CONSOLE