在Questdb
表上,我做了一些正在工作的查询,但是当我试图应用where
子句时,该字段具有时间戳类型:
SELECT Timestamp_GMT, ValueCal
FROM mytable
WHERE Timestamp_GMT='2020-12-11T11:23:27.583036Z'
我得到了一个错误信息:
unexpected argument for function: =. expected args: (STRING,STRING). actual args: (TIMESTAMP,STRING constant)
数据库中Timestamp_GMT
的类型为timestamp
并且有一些值的格式显示为2020-12-11T11:23:27.583708Z
在文档中,有where子句应用于时间戳的例子,但我看不出我的错误:https://questdb.io/docs/reference/sql/where
你能帮帮我吗?
您的Timestamp_GMT
可能不是表的指定时间戳。尽管它的类型是Timestamp
但它只能被过滤为
Timestamp_GMT=to_timestamp('2020-12-11T11:23:27.583036Z','yyyy-MM-ddTHH:mm:ss.SSSSSSZ')
指定时间戳是一个特殊的列兽。你可以对它进行过滤像
designated_ts='2020-02-26'
这实际上意味着不是一个单一的值,而是2020年2月26日从00:00:00.000000
到23:59:59.999999
的所有微秒范围。
您可以在相关文档中找到更多详细信息。