我有一个弹性搜索索引,有以下文件
{
"id":1
"mainid ": "497940311988134801282012-04-10 ",
}
{
"id":2
"mainid ": "497940311988134801282012-04-10 ",
}我希望有一个类似于-example mysql表的查询。
id mainid
1 497940311988134801282012-04-10
2 497940311988134801282012-04-10
3 497940311988134801282012-04-10
4 something different
select id ,mainid ,count(mainid) as county from wfcharges group by mainid,id having county>1;在弹性搜索中,由于在弹性.I中没有可用的集合函数,所以here.This是什么,我试过了。任何建议或在线resources.Thanks
GET /wfcharges/_search
{
"aggs" : {
"countfield" : {
"count" : { "field" : "mainid" }
}
}
}发布于 2019-09-30 19:29:56
这个查询正是您所需要的:
GET /wfcharges/_search
{
"aggs": {
"countfield": {
"terms": {
"field": "mainid",
"min_doc_count": 2
}
}
}
}它将通过mainid字段进行聚合,并告诉这个桶的最小文档计数必须为2(超过1):
发布于 2019-09-30 13:50:01
我想你会想要使用术语聚合。这将按类似的术语分组,并返回每个学期的计数。例如,查看链接的url。
在你的例子中,它看起来是这样的:
GET /wfcharges/_search
{
"aggs" : {
"countfield" : {
"terms" : { "field" : "mainid" }
}
}
}https://stackoverflow.com/questions/58167976
复制相似问题