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

Elasticsearch带时间范围的多must查询出现重复key语法错误如何解决

报错&结果不符合预期的根因

  • JSON规范不允许同一个对象下出现重复的must键,你在bool查询下定义了两个must数组,解析时会出现语法错误,或者后定义的must直接覆盖前一个,导致逻辑完全不符合预期。
  • 多余的minimum_should_match参数会干扰查询逻辑:这个参数仅当bool查询中存在should条件块时才需要配置,你当前全是「必须满足」的条件,不需要加这个参数,之前合并条件后结果不对基本都是这个参数导致的。

正确的查询DSL

你要求的三个条件(日志同时包含word1、word2、date_time在最近15分钟内)都是必须同时满足的逻辑与关系,全部放到同一个must数组中即可:

{
  "query": {
    "bool": {
      "must": [
        {
          "match": {
            "message": "word1"
          }
        },
        {
          "match": {
            "message": "word2"
          }
        },
        {
          "range": {
            "date_time": {
              "gte": "now-15m"
            }
          }
        }
      ]
    }
  }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 16:06:02