我在 SQL Server 2008 数据库中有一个表,其中包含三列:dt
、indx_nm
和indx_val
当我运行时:
SELECT *
FROM table1 a
WHERE a.indx_nm = 'ABQI' OR a.indx_nm = 'ACNACTR'
ORDER BY indx_nm, dt
我得到类似的东西(只需选择 3000 个值中的随机 8 个)
# dt--------------indx_nm----------------indx_val
2009-06-08---------ABQI------------------1001.25
2009-06-09---------ABQI------------------1002.12
2010-06-08---------ABQI------------------928.76
2011-06-10---------ABQI------------------959.97
2009-06-08--------ACNACTR----------------300.05
2009-06-09--------ACNACTR----------------341.19
2010-04-08--------ACNACTR----------------428.26
2011-07-10--------ACNACTR----------------509.48
有什么方法可以返回一个看起来像的结果
# dt---------indx_nm1-----indx_val1-------indx_nm2------indx_val2
2009-06-08----ABQI------1001.2------------ACNACTR----------300.05
2009-06-09----ABQI------1002.12 ----------ACNACTR----------341.19
本质上匹配索引号之间的共享日期,然后加入另一个indx_nm
及其对应indx_val
的结果?
*附录
所以我试图找到 和 之间的协ABQI
方差ACNACTR
。我知道我可以取整个indx_val1
'的平均值和整体的平均值,index_val2
但是有没有办法可以循环遍历整个 1000 多行的集合,以获取每个值indx_val1
并indx_val2
输入 (xi-x)(yi- y) / n
我可能在 vba 上更容易做到这一点,但我认为它无法处理它(我有数百个我想确定协方差的 indx_nm)