我对SQL很陌生,到目前为止,我只使用select语句,并且对SQL中的循环或变量有很少或没有经验。SQL中的大型数据集的时间序列
我在SQL服务器中有一个非常大的数据集;从2230个不同的观测点(节点)每小时观测一次。我与长相这样工作表:
TIMESTAMP NodeName VALUE
2015-01-01 00:00:00.000 NODE 1 5
2015-01-01 00:00:00.000 NODE 2 10
2015-01-01 00:00:00.000 NODE 3 15
2015-01-01 01:00:00.000 NODE 1 6
2015-01-01 01:00:00.000 NODE 2 12
2015-01-01 01:00:00.000 NODE 3 5
我试图找到一种方法来建立传播数据(即,节点1的值 - 节点2对TIMESTAMP的同一条目值)的所有NodeName列中的节点。传播的顺序对我来说并不重要,这意味着节点1 - 节点2与节点2 - 节点1相同。我已经使用python构建了一些内容和磁盘存在的问题空间。
最后,我想插入这个语句的结果到一个新表,与像列:
TIMESTAMP SPREADNAME SPREADVALUE
2015-01-01 00:00:00.000 NODE 1 - NODE 2 -5
不过,我会很高兴只是为了获得指出了正确的方向。
在此先感谢您的帮助!
所以如果你有2230个节点,你想(2230 * 2229/2)= 2485335为每个时间戳传播? – Quassnoi
我假设你的意思是'datetime'而不是'TIMESTAMP'(这是两种非常不同的数据类型) – pmbAustin
re:Quassnoi;是的,这是正确的 回复:pmbAustin-我刚才调用了列TIMESTAMP,条目是日期时间。我不知道有什么数据类型叫TIMESTAMP – dclair