elasticsearch - 基于另一个字段的ElasticSearch范围查询

标签 elasticsearch

因此,docs始终使用任意日期作为要检查的值。

如果我有一个具有以下属性的对象:

DateTime DueDate
DateTime NotRequired

我该怎么做:
{
    "range" : {
        "NotRequired" : {
            "gt" : "DueDate"
        }
    }
}

所以有效地给您简单的查询,让我了解所有实体NotRequired > DueDate吗?

最佳答案

range查询仅接受特定值。但是,您可以使用 script filter来比较两个日期,从而实现所需的功能。

"bool" : {
    "filter" : {
        "script" : {
            "script" : "doc.NotRequired.date > doc.DueDate.date"
        }
    }
}

请注意,为了使其正常工作,您需要enable dynamic scripting

关于elasticsearch - 基于另一个字段的ElasticSearch范围查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34901603/

相关文章:

elasticsearch - Elasticsearch index文件夹应重命名并附加currentdate

c# - Elasticsearch PUT文档的排列顺序很奇怪

java - Elasticsearch Rest 客户端抛出 java.lang.ArrayStoreException

amazon-web-services - 无法使用Elasticsearch Kuromoji插件

即使我使用 "loading:eager",Elasticsearch 第一个查询也很慢

elasticsearch - Elasticsearch 聚合始于

elasticsearch - ElasticSearch不会为常见查询字符串返回任何结果(使用不太常见的字符串)

elasticsearch - 是否可以在 AWS ElasticSearch 中安装自定义 Kibana 插件?

solr - Elasticsearch:可能在分面时排除过滤器? (就像在 Solr 中一样)

elasticsearch - 当 Auditbeat 的输出关闭时会发生什么