首页 > 解决方案 > 如果作者姓名不是文档ID,如何在多个类别中查找同一作者写作的记录

问题描述

我对 Elasticsearch 非常陌生,正在努力赶上查询和过滤器。我不确定我需要的查询是否可行,但也许你可以帮助我提供指针和方向。假设我有一个索引“书籍”,其中包含以下 4 条记录:

{"id":"1", "author":"John Smith", "title": "Book1", "category":"Sci-Fi"},
{"id":"2", "author":"John Smith", "title": "Book2", "category":"Mystery"},
{"id":"3", "author":"Jane Doe ", "title": "Book3", "category":"Sci-Fi"},
{"id":"4", "author":"Jane Doe ", "title": "Book4", "category":"Science"},
{"id":"5", "author":"Ally Waters", "title": "Book5", "category":"Mystery"}

我想找到写过“科幻”和“神秘”两个类别的书的作者。在这种情况下,它是“John Smith,但不是其他的。这几乎就像我需要分别查询每个类别,然后找到按作者姓名相交的记录。

这可以在单个查询中实现吗?我认为必须涉及一些聚合。先感谢您。

标签: elasticsearch

解决方案


推荐阅读