【发布时间】:2018-03-28 14:34:10
【问题描述】:
我对 ElasticSearch 非常陌生,并试图找出一种情况 我必须在其中显示来自 Elasticsearch 的特定 JSON 数据。请 见下面代码
def bucket_for_order_amount(buckets, aggregations)
buckets['order_range'] = {
range: {
field: :total,
keyed: true,
ranges: [
{ to: 25.0 },
{ from: 25.0, to: 50.0 },
{ from: 50.0, to: 75.0 },
{ from: 75.0, to: 100.0 },
{ from: 100.0 }
]
}
}
end
这将返回 JON 响应:
"report": {
"order_range": {
"buckets": {
"*-25.0": {
"to": 25,
"doc_count": 0
},
"25.0-50.0": {
"from": 25,
"to": 50,
"doc_count": 0
},
"50.0-75.0": {
"from": 50,
"to": 75,
"doc_count": 0
},
"75.0-100.0": {
"from": 75,
"to": 100,
"doc_count": 0
},
"100.0-*": {
"from": 100,
"doc_count": 2
}
}
}
我有一种情况,如果该范围内存在任何用户,我必须显示 doc_count 内的用户列表,但我不确定哪个 需要使用聚合来实现这种响应。
响应是这样的:-
"*-25.0": {
"to": 25,
"doc_count": 2
{
user1,
user2
},
},
【问题讨论】:
标签: ruby-on-rails-4 elasticsearch