gpt4 book ai didi

elasticsearch - Elasticsearch 聚合中第一个和最后一个文档的返回字段

转载 作者:行者123 更新时间:2023-11-29 02:54:28 24 4
gpt4 key购买 nike

我有一个排序的 elasticsearch 直方图聚合,可以正常工作。

我需要从每个聚合桶的第一个和最后一个文档中返回一个字段。

当前查询(ruby 语法):

{
query: {
filtered: {
filter: {
bool: {
must: [
{ term: { some_id: 'something' } },
{ range: {
completed_at: {
gte: start,
lte: end
}
}
}
]
}
},
_cache: true,
_cache_key: "special-query"
}
},
aggs: {
intervals: {
histogram: {
field: 'completed_at',
interval: 24.hours.to_i,
min_doc_count: 0,
order: { _key: 'asc' }
},
aggs: {
start_at: { min: { field: 'completed_at' } },
end_at: { max: { field: 'completed_at' } },
price_stats: { extended_stats: { field: 'rate' } },
}
}
}
}

我已经搜索了文档并进行了大量搜索,但找不到任何解决方案。目前我必须向数据库发送第二个查询以显式获取该字段的所有值,但我想将该功能整合到我的 elasticsearch 查询中。

最佳答案

您想为每个聚合返回一个结果,对吗?

这叫做 Field Collapsing,遗憾的是在 Elasticsearch 中尚不可用,请参阅:https://github.com/elasticsearch/elasticsearch/issues/256

2014 年 9 月更新

根据@bpierce 在下面的评论中:现在Elasticsearch 1.3.x已出,可通过 top_hits 聚合进行字段折叠。我目前在与此类似的查询中使用它。

关于elasticsearch - Elasticsearch 聚合中第一个和最后一个文档的返回字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22116662/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com