我的索引中有 2 个字段类型;
文档1
{
"category":"15",
"url":"http://stackoverflow.com/questions/ask"
}
文档2
{
"url":"http://stackoverflow.com/questions/ask"
"requestsize":"231",
"logdate":"22/12/2012",
"username":"mehmetyeneryilmaz"
}
现在我需要这样一个查询,它在同一个 url 字段中进行过滤并返回两个文档的字段:
结果:
{
"category":"15",
"url":"http://stackoverflow.com/questions/ask"
"requestsize":"231",
"logdate":"22/12/2012",
"username":"mehmetyeneryilmaz"
}
最佳答案
elasticsearch 给出的结果始终是每个文档,这意味着如果有多个文档满足您的查询/过滤器,它们将始终在结果中显示为不同的文档,并且永远不会合并为一个文档。因此,在客户端合并它们是您可以使用的一个选项。为避免获得完整的文档而只是为了获得相关字段,您可以在查询中使用“字段”。
如果这不是您所需要的,并且仍需要缩小查询本身的结果范围,则可以使用热门聚合。它将为您提供单个存储桶下的完整文档列表。但它也会有包含完整文档本身的源字段。
关于elasticsearch - 将不同文档的字段合并到同一个索引中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33375763/