在弹性搜索中搜索null和值(但不搜索不存在的值)



我有三个文档,第一个:我有一个空的images对象,第二个:我在images.front中有一个null,第三个:我的对象在images.front中。

如下:

[{
  "images": {}
}, {
  "images": {
    "front": null
  }
}, { 
  "images": {
    "front": {
      "id": 1
    }
  }
}]

如何仅搜索具有front图像的文档(文档二和三,但不是第一个)?

非常感谢:)

据我所知(我只工作到1.7.2),文档1和2在弹性的_source文档中具有相同的json结构。由于elasticsearch不支持null值。

因此,如果你想搜索有图像的文档,请在must-bool过滤器中做一个exists过滤器。

弹性零值

弹性搜索中存在过滤器

最新更新