Boolean field type
Boolean fields accept JSON true
and false
values, but can also accept strings which are interpreted as either true or false:
False values |
|
True values |
|
For example:
PUT my-index-000001
{
"mappings": {
"properties": {
"is_published": {
"type": "boolean"
}
}
}
}
POST my-index-000001/_doc/1
{
"is_published": "true"
}
GET my-index-000001/_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-000001/_doc/1
{
"is_published": true
}
POST my-index-000001/_doc/2
{
"is_published": false
}
GET my-index-000001/_search
{
"aggs": {
"publish_state": {
"terms": {
"field": "is_published"
}
}
},
"script_fields": {
"is_published": {
"script": {
"lang": "painless",
"source": "doc['is_published'].value"
}
}
}
}
Parameters for boolean
fields
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 | |
Metadata about the field. |