Boolean datatypeedit
Boolean 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.1.
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..
For example:
PUT my_index { "mappings": { "my_type": { "properties": { "is_published": { "type": "boolean" } } } } } POST my_index/my_type/1 { "is_published": 1} GET my_index/_search { "query": { "term": { "is_published": true
} } }
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
fieldsedit
The 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 |