首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >这种数据转换的最佳方法

这种数据转换的最佳方法
EN

Stack Overflow用户
提问于 2013-04-23 15:27:15
回答 1查看 96关注 0票数 2

我为了简单而简化现实..。

我有一张桌子,上面有数以百万计的温度观测: ObservationID,LocationID,Observation_Date,温度

我想写一个查询,但也派生出其他列,

ObservationID,LocationID,Observation_Date,Temperature_At_Last_Observation,Temperature_2_observations_ago,Temperature_3_observations_ago,Temperature_4_observations_ago,..etc.

实际上,这要复杂得多,而且我确实在表中有数百万行。所以我想知道哪种方法最有效。

我是否从递归的角度来攻击它?或者因为我每行至少有15个新列,这是否意味着递归效率低下?

还是坚持一种基于集合的方法,将观测数据划分为一个排序顺序,然后加入LocationID?

有什么建议吗?

幸运的是,我还可以选择将数据加载到Teradata平台或SQLServer2008R2平台中。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-23 19:58:02

坚持一种基于集合的方法。

在Server中,考虑在窗口聚合函数中使用LEAD()和LEAD()。

在Teradata中,您可以使用窗口聚合函数与n前面的行和前n行之间的行组合起来来回过头来查看'n‘行。

对于Teradata中的一个例子,请查看对问题Compare 3 Consecutive Rows in a table的回答。

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

https://stackoverflow.com/questions/16173345

复制
相关文章

相似问题

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