gpt4 book ai didi

elasticsearch - 通过多个属性限制结果

转载 作者:行者123 更新时间:2023-12-02 23:41:01 27 4
gpt4 key购买 nike

我有记录,版本,标题和过期字段的数据。
记录是一个非唯一字段,每个记录可以有多个版本。

在搜索结果中,我只需要显示每个版本之一。

因此,可以按标题搜索特定日期/之前的文章,但每个版本只返回一个结果。

例如,给定此数据:

{"record": 1, "version": 1, "title": "Hello", "expires": "2011-08-17 00:00:00"},
{"record": 1, "version": 2, "title": "Hello", "expires": "2012-08-17 00:00:00"},
{"record": 2, "version": 1, "title": "Hello world", "expires": "2010-08-17 00:00:00"},
{"record": 2, "version": 2, "title": "Hello world", "expires": "2011-08-17 00:00:00"},
{"record": 2, "version": 3, "title": "Hello world", "expires": "2012-08-17 00:00:00"},

搜索标题中包含“Hello”且在2012-08-18之前或之前过期的文档,应返回:
{"record": 1, "version": 2, "title": "Hello", "expires": "2012-08-17 00:00:00"},
{"record": 2, "version": 3, "title": "Hello world", "expires": "2012-08-17 00:00:00"}

(每条记录的最新“版本”)。

有任何想法吗?

我是否需要遍历ES之外的结果?
谢谢阅读!

最佳答案

您想要的称为字段折叠,它是Apache Solr拥有而ElasticSearch却没有的少数几个功能之一。

http://wiki.apache.org/solr/FieldCollapsing

ElasticSearch中对此功能有很多要求,但尚未实现。

关于elasticsearch - 通过多个属性限制结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18294240/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com