首页 > 解决方案 > 有没有办法在elasticsearch中设置默认日期范围

问题描述

如果 to 和 from 字段为空,弹性搜索中有什么方法可以设置默认日期范围。就像每当 to 和 from 为空时,elasticsearch 应该根据定义的默认范围执行搜索。我写了一个查询,但它只适用于定义了 to 和 from 的情况:

"range": {
            "time": {
              "from": "2018-01-16T07:05:00",
              "to": "2018-01-16T10:59:09",
              "include_lower": true,
              "include_upper": true
            }
          }

标签: elasticsearch

解决方案


elasticsearch 目前没有默认日期范围。

如果您没有提供任何日期范围过滤器,elasticsearch 将搜索与您的查询匹配的全部记录。

它将搜索您指向搜索的整个索引或别名。

我的建议是

如果要在过滤器中设置默认时间范围,则必须在代码中执行此操作(即客户端)。因此,您的程序应该设置一个时间框架示例 - 过去 30 天或其他时间。


推荐阅读