我有一个看起来像这样的表:
Created at | Amount | Register Name
--------------+---------+-----------------
01/01/2019... | -150.01 | Front
01/01/2019... | 38.10 | Back
将按日期递增的总计添加到每条记录(仅适用于该记录具有的寄存器名称)的最佳方法是什么?我可以在Ruby中执行此操作,但是由于它是Web应用程序,因此在数据库中执行操作会快得多。
该应用程序是运行Postgres 10的Rails应用程序,尽管答案当然可以与Rails无关。
答案 0 :(得分:2)
使用集合mat_csc = csc_matrix((sparse_pd['value'].values*1., (sparse_pd['obs_id'].values,sparse_pd['var_id'].values)),
shape=(obsmap_pd.shape[0],varmap_pd.shape[0]))
作为窗口函数,例如:
sum()