所以我有一个名为dash
的表格,其中有两列:value
和date
。
我有一个名为timestamp
的{{1}}变量。
localtime
和localtime
都是date
格式。
我需要在yyyy-mm-dd hh-mm
上找到最接近的时间戳,并返回dash
。
现在我所做的并不起作用。
value
更新: 这个似乎工作,order_date> locatime非常重要,否则它会寻找最小的负数
def convValueChecking(cursor, localtime):
cursor.execute("SELECT Value, MIN(TIMESTAMPDIFF(MINUTE, DATE, %s)) FROM dash", (localtime))
value = cursor.fetchall()
答案 0 :(得分:1)
尝试用以下代码替换SQL字符串:
SELECT
value
FROM
dash
WHERE
TIMEDIFF(Date, %s) IN
(
SELECT
MIN(TIMEDIFF(Date, %s))
FROM
dash
)
MySQL语法意味着您需要SELECT
然后FROM
,然后声明WHERE
部分。
TIMEDIFF
计算出两个时间戳之间的差异。 TIMESTAMPDIFF
计算出时间戳的两个部分之间的差异(例如,在月,日,秒等之间)。如果您想要最接近的日期,则应使用TIMEDIFF
来计算出最小的差异。
NB。单词Value
和Date
在MySQL中也有特殊属性,因此您可能想要更改列名。