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

使用TIMESTAMP范围查询GridDB时触发[100009]语法错误求助

解决GridDB TimeSeries容器时间范围查询的语法错误

你的查询报错是因为GridDB的SQL语法中,INTERVAL的写法和标准SQL不同,不需要给时间单位加单引号,同时要注意时间运算的正确格式。

错误原因

你写的INTERVAL '1 DAY'不符合GridDB的语法规范,GridDB要求INTERVAL后直接跟数值和时间单位,不需要单引号。

修正后的代码

from griddb_python import *

factory = StoreFactory.get_instance()
gridstore = factory.get_store(host="127.0.0.1", port=10001, cluster_name="myCluster", username="admin", password="admin")
container = gridstore.get_container("sensor_data")

# 修正时间范围查询的语法
query = container.query("SELECT * WHERE timestamp > NOW() - INTERVAL 1 DAY")
rs = query.fetch()

额外说明

  1. 如果你的TimeSeries容器的时间列不是timestamp,需要替换为你实际定义的时间主键列名
  2. 也可以使用TIMESTAMPADD函数来实现相同逻辑,写法如下:
SELECT * WHERE timestamp > TIMESTAMPADD(DAY, -1, NOW())

这种写法在GridDB中同样有效,且可读性更强。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 20:22:02