我正在使用聚合根据其他字段的总和对一个字段进行分组。
它正在工作,但是输出与我从数据库查询中获得的输出不相似。
ES查询:
{
"from": 0,
"size": 0
,
"aggs": {"domain_agg": {
"terms": {
"field": "domain_name.keyword"
},
"aggs": {
"domain_store_count_sum": {
"sum": {
"field": "store_count"
}
},
"domain_store_count_agg": {
"bucket_sort": {
"sort": [
{
"domain_store_count_sum": {
"order": "desc"
}
}
],
"size": 5
}
}
}
}
},
"query": {
"query_string": {
"query": "(*:*) "
}
}
}
输出:
“ domain_agg”:{ “ doc_count_error_upper_bound”:9 “ sum_other_doc_count”:1442, “存储桶”:[ { “ key”:“ advanceautoparts.com”, “ doc_count”:2 “ domain_store_count_sum”:{ “值”:11258 } }, { “ key”:“ tesla.com”, “ doc_count”:3, “ domain_store_count_sum”:{ “值”:6795 } }, { “ key”:“ aldi.us”, “ doc_count”:2 “ domain_store_count_sum”:{ “值”:3678 } }, { “ key”:“ alamo.com”, “ doc_count”:2 “ domain_store_count_sum”:{ “值”:566 } }, { “ key”:“ ajg.com”, “ doc_count”:2 “ domain_store_count_sum”:{ “值”:440 } } ]}
但是当我在数据库中运行相同的文件时,我得到了不同的输出。
数据库查询:
SELECT domain_name, SUM(store_count) AS store_count
FROM table
GROUP BY domain_name order by store_count desc
输出:
'subway.com','57384'
'bmoharris.com','56876'
'peets.com','37472'
'citibank.com','32348'
'shell.us','23016'
为什么我在Elasticsearch中得到的结果不同,而两者都有相同的数据。