【发布时间】:2014-12-04 11:34:12
【问题描述】:
我正在使用弹性搜索来创建构面。它很适合计数,但我尝试了一个更复杂的任务。问题是我不知道我想做的任务的名称......
我的实际方面查询:
"facets": {
"name": {"terms": {"field": "name", "size": 20}}
}
回复:
"name": {
"_type": "terms",
"missing": 0,
"total": 11,
"other": 0,
"terms": [
{ "term": "liliales", "count": 4 },
{ "term": "commelinales", "count": 3 },
{ "term": "dioscoreales", "count": 2 },
{ "term": "arecales", "count": 1 },
{ "term": "poales", "count": 1 }
] } }
这是我的数据示例:
name | rank
_________________________________
liliales | accepted
liliales | accepted
liliales | misapplied
liliales | synonym
commelinales | accepted
commelinales | misapplied
commelinales | synonym
dioscoreales | misapplied
dioscoreales | synonym
arecales | accepted
poalesa | synonym
我希望每个术语都有一个带有“rank”计数的子数组,如下所示:
"name" : {
"_type" : "terms",
"missing" : 0,
"total" : 11,
"other" : 0,
"terms" : [{
"term" : "liliales",
"count" : 4,
"rank" : {
"accepted" : 2,
"misapplied" : 1,
"synonym" : 1
}
}, {
"term" : "commelinales",
"count" : 3,
"rank" : {
"accepted" : 1,
"misapplied" : 1,
"synonym" : 1
}
}, {
"term" : "dioscoreales",
"count" : 2,
"rank" : {
"misapplied" : 1,
"synonym" : 1
}
}, {
"term" : "arecales",
"count" : 1,
"rank" : {
"accepted" : 1
}
}, {
"term" : "poales",
"count" : 1,
"rank" : {
"synonym" : 1
}
}
]
}
请问这个方面的名称是什么,我该怎么做?
提前致谢
【问题讨论】:
标签: elasticsearch facet