2

我有这个数据:

Player  StartBalance    Day1Earned  Day1Spent   Day2Earned  Day2Spent   Day3Earned  Day3Spent
Alex      10              0           0           3           -5          3           -15

如何使用 SQL Server 跨列进行滚动总计,以便第 3 天的期末余额(实际数据可以扩展到第 30 天)为 0?

每日余额由前一天余额+当日赚取+当日消费确定,如果三项之和小于0,则余额为0。

4

1 回答 1

0

我会让你的总列计算(并保持)。然后,您可以简单地将列相加并将它们包装在一个 CASE 中,如果小于零则设置为 0。我会使用这样的东西(在需要时使用 ISNULL)。

(CASE WHEN ([DAY1]+[DAY2])<(0) THEN (0) ELSE [DAY1]+[DAY2] END)
于 2011-03-17T10:47:14.040 回答