标记嵌套使术语查询和聚合不起作用

Marking nested makes terms query and aggregation not working

为了实现对属性数组的正确查询,我将字段声明为嵌套的。现在术语查询和正常匹配查询都没有给出任何结果。对于这种类型,我应该做些什么吗?

要使其正常工作,您需要使用

  1. Nested query 用于查询嵌套字段
  2. Nested filter 过滤
  3. Nested aggregation 聚合

这是因为对于嵌套数组中的每个元素,都会创建一个新的嵌套 lucene 文档,您需要单独的一组 query/agg 才能访问它们。否则它会在根文档中查找它不存在的地方。