You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写Elasticsearch查询,筛选日期字段早于当前时间减指定周期的文档

Elasticsearch 日期范围查询调整方法

你只需要修改range条件下joiningDate的lte取值即可,Elasticsearch原生支持now关键字后拼接时间偏移量,d代表天数单位,10天偏移直接写now-10d即可。

修改后的完整查询如下:

GET employees/_search
{
  "query": {
    "bool": {
      "filter": [
        {
          "term": {
            "empId": "XXXXXX"
          }
        },
        {
          "range": {
            "joiningDate": {
              "lte": "now-10d"
            }
          }
        }
      ]
    }
  }
}

补充说明:
如果需要按自然日期(忽略当前时分秒,对齐到当日零点)筛选,可改用now-10d/d,会将计算时间对齐到10天前的零点,避免时分秒对筛选结果的干扰。
其他常用时间偏移写法参考:

  • 早于当前时间减28天:now-28d
  • 早于当前时间减2个月:now-2M(注意月份单位为大写M,小写m代表分钟)
  • 早于当前时间减1年:now-1y

内容的提问来源于stack exchange,提问作者hema

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 04:36:03