我在Elasticsearch中存储了一些文章,我一直在想是否有一种方法可以按日期查询,但结果包含每个发布者的特定数量的文章。更具体地说,我有5个不同的出版商,我想获得10篇最新的文章,每个出版商2篇。我将发布者名称作为关键字字段存储在elastic中。
我想到的唯一想法是分别为每个发布者运行一个查询,并将结果限制在前2个(然后以编程方式合并结果(,但我认为如果有办法在单个查询中做到这一点,效率会更高。
感谢
这听起来像是字段崩溃的情况。
您将在publisher
字段上输入collapse
(只要它是关键字或数字(,然后请求实际文章inner_hits
。