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
editnull_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:
resp = client.indices.create( index="my-index-000001", mappings={ "properties": { "status_code": { "type": "keyword", "null_value": "NULL" } } }, ) print(resp) resp1 = client.index( index="my-index-000001", id="1", document={ "status_code": None }, ) print(resp1) resp2 = client.index( index="my-index-000001", id="2", document={ "status_code": [] }, ) print(resp2) resp3 = client.search( index="my-index-000001", query={ "term": { "status_code": "NULL" } }, ) print(resp3)
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
const response = await client.indices.create({ index: "my-index-000001", mappings: { properties: { status_code: { type: "keyword", null_value: "NULL", }, }, }, }); console.log(response); const response1 = await client.index({ index: "my-index-000001", id: 1, document: { status_code: null, }, }); console.log(response1); const response2 = await client.index({ index: "my-index-000001", id: 2, document: { status_code: [], }, }); console.log(response2); const response3 = await client.search({ index: "my-index-000001", query: { term: { status_code: "NULL", }, }, }); console.log(response3);
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.