一尘不染

选择最近几分钟的行

javascript

我想实现这个功能来选择最近几分钟的行。(假设最晚时间为 09:34:00)

SELECT CONVERT(VARCHAR(10),cur_time,108) as CUR_TIME, AVG(CAST(now_price AS FLOAT)) AS now_price 
FROM dbo.ticktest
GROUP BY CUR_TIME
HAVING CUR_TIME >= '09:32:30'

但是我希望它可以自动cur_time在我的表中找到最新的,所以我这样写这个函数:

SELECT CONVERT(VARCHAR(10),cur_time,108) as CUR_TIME, AVG(CAST(now_price AS FLOAT)) AS now_price
FROM dbo.ticktest
GROUP BY CUR_TIME
HAVING CUR_TIME >= CONVERT(VARCHAR(10),DATEADD(mi,-1,MAX(cur_time)),108)

它返回所有时期的数据。那么,我该如何纠正这个错误以使功能正常运行。

谢谢


阅读 82

收藏
2022-07-21

共1个答案

一尘不染

使用子查询,您总是选择实际上是最新时间的最大时间

HAVING CUR_TIME >= (select max(CUR_TIME) from dbo.ticktest)
2022-07-21