Elasticsearch:用于搜索是否根本不存在字段的查询,该字段应不匹配[](空数组字段)

时间:2019-04-17 10:18:04

标签: elasticsearch

我有一些文档具有字段links : [],而其他文档根本没有字段links

我想获取完全没有字段links的文档。 我已经尝试过以下查询:

{
    "query": {
        "bool": {
            "must_not": {
                "exists": {
                    "field": "links"
                }
            }
        }
    }
}

但是此查询还会返回带有links:[]

的文档

1 个答案:

答案 0 :(得分:0)

您最好的选择是修改字段的映射以考虑空值,请参考此链接(documentation)。

您可以在布尔值内部使用通配符查询*来查看它是否包含任何条件-但这是一种非常低效/缓慢的查询方式,可能不实际,具体取决于该字段的基数。