标签: elasticsearch
我有两种方法来记录我的数据。
首先,我过滤mysql数据并将其搞砸
其次,我在aggs中过滤了数据。 如下:
我发现了不同的结果,我不知道为什么。
任何人都可以解释一下吗?
答案 0 :(得分:3)
来自Docs
默认情况下,聚合在与查询相同的范围内运行。换句话说,聚合是根据与您的查询匹配的文档集计算的。
因此,在第一种情况下,您将获得符合"site_id" : 1167639标准的文档,然后对这些文档执行aggregation。
"site_id" : 1167639
aggregation
在第二种情况下,您没有指定任何查询,因此默认情况下它是match_all查询,您将获取hits中65773792的所有文档。然后使用{{3}缩小聚合标准。
match_all
hits