IMPORTANT: No additional bug fixes or documentation updates
will be released for this version. For the latest information, see the
current release documentation.
null_value
edit
IMPORTANT: This documentation is no longer updated. Refer to Elastic's version policy and the latest documentation.
null_value
editA null value cannot be indexed or searched. When a field is set to null,
(or an empty array or an array of null values) it is treated as though that
field has no values.
The null_value parameter allows you to replace explicit null values with
the specified value so that it can be indexed and searched. For instance:
response = client.indices.create(
index: 'my-index-000001',
body: {
mappings: {
properties: {
status_code: {
type: 'keyword',
nil_value: 'NULL'
}
}
}
}
)
puts response
response = client.index(
index: 'my-index-000001',
id: 1,
body: {
status_code: nil
}
)
puts response
response = client.index(
index: 'my-index-000001',
id: 2,
body: {
status_code: []
}
)
puts response
response = client.search(
index: 'my-index-000001',
body: {
query: {
term: {
status_code: 'NULL'
}
}
}
)
puts response
PUT my-index-000001
{
"mappings": {
"properties": {
"status_code": {
"type": "keyword",
"null_value": "NULL"
}
}
}
}
PUT my-index-000001/_doc/1
{
"status_code": null
}
PUT my-index-000001/_doc/2
{
"status_code": []
}
GET my-index-000001/_search
{
"query": {
"term": {
"status_code": "NULL"
}
}
}
|
Replace explicit |
|
|
An empty array does not contain an explicit |
|
|
A query for |
The null_value needs to be the same data type as the field. For
instance, a long field cannot have a string null_value.
The null_value only influences how data is indexed, it doesn’t modify
the _source document.