mirror of
https://github.com/elastic/elasticsearch.git
synced 2025-06-28 09:28:55 -04:00
In a few previous PR's we restructured the ES|QL docs to make it possible to generate them dynamically. This PR just moves a few files around to make the query languages docs easier to work with, and a little more organized like the ES|QL docs. A bit part of this was setting up redirects to the new locations, so other repo's could correctly link to the elasticsearch docs.
70 lines
1.8 KiB
Markdown
70 lines
1.8 KiB
Markdown
---
|
||
navigation_title: "Exists"
|
||
mapped_pages:
|
||
- https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-exists-query.html
|
||
---
|
||
|
||
# Exists query [query-dsl-exists-query]
|
||
|
||
|
||
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` and `"doc_values" : 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
|
||
|
||
## Example request [exists-query-ex-request]
|
||
|
||
```console
|
||
GET /_search
|
||
{
|
||
"query": {
|
||
"exists": {
|
||
"field": "user"
|
||
}
|
||
}
|
||
}
|
||
```
|
||
|
||
|
||
## Top-level parameters for `exists` [exists-query-top-level-params]
|
||
|
||
`field`
|
||
: (Required, string) Name of the field you wish to search.
|
||
|
||
While a field is deemed non-existent 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 [`null-value`](/reference/elasticsearch/mapping-reference/null-value.md), defined in field mapping
|
||
|
||
|
||
|
||
## Notes [exists-query-notes]
|
||
|
||
### Find documents missing indexed values [find-docs-null-values]
|
||
|
||
To find documents that are missing an indexed value for a field, use the `must_not` [boolean query](/reference/query-languages/query-dsl/query-dsl-bool-query.md) with the `exists` query.
|
||
|
||
The following search returns documents that are missing an indexed value for the `user.id` field.
|
||
|
||
```console
|
||
GET /_search
|
||
{
|
||
"query": {
|
||
"bool": {
|
||
"must_not": {
|
||
"exists": {
|
||
"field": "user.id"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
```
|
||
|
||
|
||
|