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

如何修改Elasticsearch查询以获取当前周起始至今的数据?

解决Elasticsearch周起始日期查询的解析错误问题

你用的日期数学表达式格式不符合Elasticsearch的语法要求,日期截断操作符/后面只能跟标准时间单位(比如y年、M月、w周、d天),不能用yyyy-W/W这种自定义格式,所以触发了parse_exception错误。

正确的周起始查询写法

要获取本周起始至今的数据,把range条件里的gte值改成now/w即可。w代表周单位,now/w会自动截断到本周的起始时间(具体是周一还是周日取决于你的Elasticsearch时区和周起始配置,默认以周一为周起始)。

修改后的完整查询

{
    "size": 10,
    "timeout": "1000s",
    "query": {
        "bool": {
            "must": [
                {
                    "match": {
                        "filter_grouper": "ABC"
                    }
                },
                {
                    "match": {
                        "state": "High"
                    }
                },
                {
                    "range": {
                        "end_date": {
                            "gte": "now/w",
                            "lte": "now"
                        }
                    }
                }
            ]
        }
    },
    "_source": [
        "number",
        "barrel"
    ]
}

补充说明

如果业务需要以周日作为周起始,可以调整Elasticsearch的周起始配置,或者在日期表达式中指定对应时区,默认的now/w就能满足多数本周起始的查询需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 03:49:54