如果我的博客文章包含数千(或数十万)nested
条评论,而我想查找前10个博客文章。我将使用size
来控制我想要检索的博客帖子数量,但我不确定如何限制我想要的nested
条评论的大小。
e.g。这将返回前10篇博客文章,其中包含无限评论
GET myblog/_search
{
"size": 10,
"query": {
"match_all": {}
}
}
我尝试inner_hits
但它对我不起作用。当我使用时,我必须在嵌套注释中进行查询,我也禁用了源代码(以避免检索带有所有注释的帖子),而inner_hits结果将为每个帖子(冗余)提供每条评论,即使在某些帖子中也是如此情况它是同一个父帖。
我还考虑了parent-child
方法,但这意味着创建了多个请求/查询。
您知道如何限制查询中嵌套集合的大小吗?
我正在寻找的是创建一个查询,我可以做一些事情,比如获得前5个评论的前10篇博客帖子。
答案 0 :(得分:0)
您可以尝试此查询:
{
"_source": false,
"fields":["your_fields"],
"size": 10,
"query": {
"match_all": {}
},
"inner_hits" : {
"comments" : {
"path" : {
"comments" : {
"size":5,
"query" : {
"match_all": {}
}
}
}
}
}
}