Exists query

edit

Returns documents that contain a value other than null or [] in a provided field.

Example request

edit
GET /_search
{
    "query": {
        "exists": {
            "field": "user"
        }
    }
}

Top-level parameters for exists

edit
field

(Required, string) Name of the field you wish to search.

To return a document, this field must exist and contain a value other than null or []. These values can include:

  • Empty strings, such as "" or "-"
  • Arrays containing null and another value, such as [null, "foo"]
  • A custom null-value, defined in field mapping

Notes

edit

Find documents with null values

edit

To find documents that contain only null values or [] in a provided field, use the must_not boolean query with the exists query.

The following search returns documents that contain only null values or [] in the user field.

GET /_search
{
    "query": {
        "bool": {
            "must_not": {
                "exists": {
                    "field": "user"
                }
            }
        }
    }
}