首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在T中快速计算前1440行的高低?

在T中快速计算前1440行的高低?
EN

Stack Overflow用户
提问于 2021-01-05 21:09:05
回答 2查看 41关注 0票数 0

我每分钟都有一次争吵,有高有低的价值。我希望为当前行计算前1440行中的最高值(=1天),并计算此期间的最低值。

数据模型非常简单。

代码语言:javascript
复制
TimeStamp           | High | Low
2020-01-01 01:01    |  10  |  8
2020-01-01 01:02    |  11  |  8
2020-01-01 01:03    |  11  |  6
...

这是一千万行

我试过:

  • 自连接前1440行的MIN和MAX
  • 滥用滞后函数
  • 创建游标逐行计算结果

都不能在2小时内跑进来.

所以我希望用另一种方法来激发创造力。

我的最后一招是Python,在那里我可以将它作为一个矩阵来导航。然而,这应该是最后的手段。

EN

回答 2

Stack Overflow用户

发布于 2021-01-05 21:23:26

我相信你在找over w/ 行/范围

代码语言:javascript
复制
select
    ...
    , [TimeStamp]
    , [PrecedingDayHigh] = MAX([High]) 
        over( order by [TimeStamp] desc ROWS BETWEEN 1339 PRECEDING AND CURRENT ROW )
    , [PrecedingDayLow] = MIN([Low])
        over( order by [TimeStamp] desc ROWS BETWEEN 1339 PRECEDING AND CURRENT ROW )
from
    ...
票数 1
EN

Stack Overflow用户

发布于 2021-01-05 21:12:03

嗯嗯。。。如果您希望行具有最高的high

代码语言:javascript
复制
select top (1) t.*
from (select top (1440) t.*
      from t
      order by timestamp desc
     ) t
order by high desc;

对于最高或最低的低点,你可以做类似的事情。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65586600

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档