WARNING: Version 5.4 of Elasticsearch has passed its EOL date.
This documentation is no longer being maintained and may be removed. If you are running this version, we strongly advise you to upgrade. For the latest information, see the current release documentation.
Boolean datatype
editBoolean datatype
editBoolean fields accept JSON true
and false
values, but can also accept
strings and numbers which are interpreted as either true or false:
False values |
|
True values |
Anything that isn’t false. |
Deprecated in 5.1.0.
While Elasticsearch will currently accept the above values during index time. Searching a boolean field using these pseudo-boolean values is deprecated. Please use "true" or "false" instead.
Deprecated in 5.3.0.
Usage of any value other than false
, "false"
, true
and "true"
is deprecated.
For example:
PUT my_index { "mappings": { "my_type": { "properties": { "is_published": { "type": "boolean" } } } } } POST my_index/my_type/1 { "is_published": "true" } GET my_index/_search { "query": { "term": { "is_published": true } } }
Indexing a document with |
|
Searching for documents with a JSON |
Aggregations like the terms
aggregation use 1
and 0
for the key
, and the strings "true"
and
"false"
for the key_as_string
. Boolean fields when used in scripts,
return 1
and 0
:
POST my_index/my_type/1 { "is_published": true } POST my_index/my_type/2 { "is_published": false } GET my_index/_search { "aggs": { "publish_state": { "terms": { "field": "is_published" } } }, "script_fields": { "is_published": { "script": { "lang": "painless", "inline": "doc['is_published'].value" } } } }
Parameters for boolean
fields
editThe following parameters are accepted by boolean
fields:
Mapping field-level query time boosting. Accepts a floating point number, defaults
to |
|
Should the field be stored on disk in a column-stride fashion, so that it
can later be used for sorting, aggregations, or scripting? Accepts |
|
Should the field be searchable? Accepts |
|
Accepts any of the true or false values listed above. The value is
substituted for any explicit |
|
Whether the field value should be stored and retrievable separately from
the |