null_value
编辑null_value
编辑
null
值无法被索引或搜索。当一个字段被设置为 null
时(或者是一个空数组或一个包含 null
值的数组),它将被视为该字段没有值。
null_value
参数允许您将显式的 null
值替换为指定的值,以便可以对其进行索引和搜索。例如
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" } } }
null_value
的数据类型需要与字段的数据类型相同。例如,long
字段不能具有字符串类型的 null_value
。
null_value
只会影响数据的索引方式,不会修改 _source
文档。