Elasticsearch日期查询在某个月出生的人

问题描述

您可以使用过滤器来实现script

每年5月出生的所有人:

{
  "query": {
    "filtered": {
      "filter": {
        "script": {
          "script": "doc.birthdate.date.monthOfYear == 5"
        }
      }
    }
  }
}

所有8月25日出生的人(每年)

{
  "query": {
    "filtered": {
      "filter": {
        "script": {
          "script": "doc.birthdate.date.monthOfYear == 8 && doc.birthdate.date.dayOfMonth == 25"
        }
      }
    }
  }
}

解决方法

我有一个具有以下映射的字段:

birthdate: { type: :date,format: :dateOptionalTime }
  1. 我需要找到每个在五月(包括所有年份)出生的人
  2. 另一个查询是查找所有在“ 8月25日”出生的人(包括所有年份)

这将是什么查询?

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...