Elasticsearch重复数据删除结果,为每个"字段值返回1个doc"

时间:2014-05-29 08:18:18

标签: elasticsearch

比方说,我们有这样的指数:

{"id":1, "country":"cn", "keywords":"kwd1 kwd2"}
{"id":2, "country":"cn", "keywords":"kwd1 kwd3"}
{"id":3, "country":"us", "keywords":"kwd1 kwd5"}
{"id":4, "country":"us", "keywords":"kwd1 kwd4"}

然后我们通过查询     {" term":{" keywords":" kwd1"}。

通常我们会在返回所有4个文档后得到结果。

但是,如果我每个"国家"只需要1个文档怎么办?价值回归?换句话说,我怎样才能得到结果"按字段(" country")的价值重复?

非常感谢!

1 个答案:

答案 0 :(得分:0)

单向:您可以查看构面或聚合

另一种方式:使用包含国家/地区的父索引和关键字的子索引,并使用top_children查询