【发布时间】:2019-07-09 16:05:57
【问题描述】:
我需要获取第二个条目的当前金额与该特定年份的先前金额的总和。
输入表
+-----------+----------+-------------+-----------+----------+
| ID | Name | Date1 |Date 2 |amount |
+-----------+----------+-------------+-----------+----------+
| 10000000 | ABC | 11/2/2017 |**11/2/2018** |2504 |
| 10000000 | ABC | 12/20/2017 |**11/2/2018** |-2174 |
| 10000000 | ABC | 10/05/2018 |10/05/2019 |1234 |
| 10000000 | ABC | 10/06/2019 |10/06/2020 |3456 |
+-----------+----------+-------------+-----------+----------+
这是所需的输出:
+-----------+----------+-------------+-----------+----------+
| ID | Name | Date1 |Date 2 |amount |
+-----------+----------+-------------+-----------+----------+
| 10000000 | ABC | 11/2/2017 |**11/2/2018** |2504 |
| 10000000 | ABC | 12/20/2017 |**11/2/2018** |329 |
| 10000000 | ABC | 10/05/2018 |10/05/2019 |1234 |
| 10000000 | ABC | 10/06/2019 |10/06/2020 |3456 |
+-----------+----------+-------------+-----------+----------+
记录 3 数量 - 1234 (1234+0(当年没有记录)) 因为日期 2 不同
记录 4 数量 - 3456 (3456+0(当年没有记录)) 因为日期 2 不同
如果两条记录的日期 2 相同,我正在寻找一条记录的当前、先前金额值的总和。假设我们有 3 条具有相同日期 2 值的记录。那么第一个记录应该有它的实际金额值,第二个记录应该有第一个记录金额+2个记录金额,3个记录应该有第一个记录金额+2个记录金额+3个记录金额。
【问题讨论】:
-
记录 2 已更改 - 但显示的值看起来不正确。这是正确的吗?如果是这样,您是如何得出这个数字的? ID 和 Name 的值是否相关?如果第 2 行的值不同,您还想求和吗?
-
记录 1 数量 - 2504 +0(2017 年没有以前的记录)记录 2 数量为 2504+(-2174) = 329,因为日期 1 的年份是 2017。实际上我需要当前和以前的总和该学期的金额(2017 年)
标签: sql-server sum