如何计算KDB中的一年至今



我有一张类似的表:

2019.03m Bolts  100
2019.03m Nuts    50
2019.02m Bolts   10
2019.02m Nuts   100 
2019.01m Bolts   50
2019.01m Nuts    10
2018.12m Bolts   10
2018.12m Nuts    10
2018.11m Bolts   20
2018.11m Nuts    30

我想介绍一个名为"年度到日期"专栏的新列

2019.03m Bolts  100 160
2019.03m Nuts    50 160
2019.02m Bolts   10  60
2019.02m Nuts   100 110 
2019.01m Bolts   50  50
2019.01m Nuts    10  10
2018.12m Bolts   10  30
2018.12m Nuts    10  40
2018.11m Bolts   20  20
2018.11m Nuts    30  30

这总结了前一年至今的行,并在新的一年时重置。

我有一个使用sums的想法,但是在新的一年时我该如何重置?

我相信以下是您所追求的。请注意,我以及时的序列升级顺序倒转。

reverse  update YTD:sums Number  by tool,date.year from reverse t
date    tool  Number YTD
------------------------
2019.03 Bolts 100    160
2019.03 Nuts  50     160
2019.02 Bolts 10     60
2019.02 Nuts  100    110
2019.01 Bolts 50     50
2019.01 Nuts  10     10
2018.12 Bolts 10     30
2018.12 Nuts  10     40
2018.11 Bolts 20     20
2018.11 Nuts  30     30

如果您的表按日期订购(在示例中下降),则可以使用以下查询。否则,您可以在运行查询之前使用date xdesc订购。

q) update ytd:reverse sums reverse num by date.year,name from t 

最新更新