如何在elasticsearch中查询日期?

slsn1g29  于 2022-11-28  发布在  ElasticSearch
关注(0)|答案(1)|浏览(293)

我试图在elasticsearch查询一个确切的日期,当我提交,我收到的日期不是查询的一部分.我有这个代码

{
    "query": {
        "bool": {
            "must": [
                {
                    "match": {
                        "device.id": 1374
                    }
                },
                {
                    "match": {
                        "readingType.id": 1048
                    }
                },
                {
                    "match": {
                        "created": "2022-11-16"
                    }
                }
            ]
        }
    },
    "size": 1000,
    "from": 0,
    "sort": [
        {
            "created": {
                "order": "desc"
            }
        }
    ]
}

所以我试着搜索日期2022-11-16,得到了以下数据

我可以知道为什么elasticsearch会将2022-11-17添加到列表中吗?我已经查看了文档,但我没有看到为什么我会有这个列表的问题。我只想要2022-11-16的数据
我为我创建的列设置了此设置。

{
    "list": {
        "aliases": {},
        "mappings": {
            "reading": {
                "_meta": {
                    "model": "App\\Entity\\List"
                },
                "dynamic_date_formats": [],
                "properties": {
                    "created": {
                        "type": "date"
                    },
                    "device": {
                        "properties": {
                            "id": {
                                "type": "long"
                            }
                        }
                    },
vatpfxk5

vatpfxk51#

要查询确切日期,您需要执行以下操作:

{
                "range": {
                    "created": {
                       "gte": "2022-11-16",
                       "lte": "2022-11-16"
                    }
                }
            }

相关问题