es统计数据去除某个字段的某些数据
要在Elasticsearch中统计数据并去除某个字段的特定数据,可以使用以下步骤:
使用terms聚合获取不需要的数据的分布。
使用filter聚合结合terms筛选掉不需要的数据。
以下是一个Elasticsearch查询的例子,假设我们有一个名为logs的索引,我们想要统计一个名为level的字段,但是去除值为ERROR的数据:
POST /logs/_search { "size": 0, "aggs": { "non_error_logs": { "filter": { "bool": { "must_not": { "terms": { "level.keyword": ["ERROR"] } } } }, "aggs": { "distinct_levels": { "terms": { "field": "level.keyword", "size": 10 } } } } } }
这个查询将返回一个名为non_error_logs的子聚合distinct_levels,它包含了不包含ERROR值的level字段的分布。注意,字段名通常需要指定为.keyword以获取精确的文本匹配。
标签:terms,logs,keyword,level,字段,去除,es From: https://www.cnblogs.com/tangtuzi/p/18312748