ES在聚合时,结果字段被分词处理

本文探讨了如何通过在SQL和ES查询中使用'src_ip_location.keyword'字段和关键字类型,避免字段分词导致的计数不准确。提供了一段包含from, size, _source, stored_fields和aggregations部分的详细ES聚合查询示例,以确保正确地获取源IP位置的计数结果。
摘要由CSDN通过智能技术生成

在上篇文章中对src_ip_location字段进行分组并求count,得到的结果却是ES把结果字段进行了分词,没有达到预期的结果.
在这里插入图片描述
解决方案:在聚合的字段后面加keyword
SQL语法
在这里插入图片描述
ES语法

{
	"from": 0,
	"size": 0,
	"_source": {
		"includes": [
			"src_ip_location.keyword",
			"COUNT"
		],
		"excludes": []
	},
	"stored_fields": "src_ip_location.keyword",
	"aggregations": {
		"src_ip_location.keyword": {
			"terms": {
				"field": "src_ip_location.keyword",
				"size": 1000,
				"shard_size": 20000,
				"min_doc_count": 1,
				"shard_min_doc_count": 0,
				"show_term_doc_count_error": false,
				"order": [
					{
						"_count": "desc"
					},
					{
						"_key": "asc"
					}
				]
			},
			"aggregations": {
				"COUNT(*)": {
					"value_count": {
						"field": "_index"
					}
				}
			}
		}
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值