跨两表SUMPRODUCT计算:对应4组数据相乘求和实现方案
数据计算需求
需要将Table B中当前行及往前3天的共4行values,与Table A对应日期的4条seq记录的values分别相乘后求和,具体数据及计算示例如下:
Table A
| date | values | seq |
|---|---|---|
| 01-07-2022 | 40 | 4 |
| 01-07-2022 | 90 | 3 |
| 01-07-2022 | 20 | 2 |
| 01-07-2022 | 80 | 1 |
| 02-07-2022 | 30 | 4 |
| 02-07-2022 | 10 | 3 |
| 02-07-2022 | 60 | 2 |
| 02-07-2022 | 20 | 1 |
| 03-07-2022 | 70 | 4 |
| 03-07-2022 | 50 | 3 |
| 03-07-2022 | 10 | 2 |
| 03-07-2022 | 80 | 1 |
Table B
| date | values |
|---|---|
| 29-06-2022 | 20 |
| 30-06-2022 | 21 |
| 01-07-2022 | 22 |
| 02-07-2022 | 23 |
| 03-07-2022 | 24 |
计算示例
2022年7月2日求和计算
| Table B日期 | Table B数值 | Table A日期 | Table A数值 | A*B结果 | 求和 |
|---|---|---|---|---|---|
| 29-06-2022 | 20 | 02-07-2022 | 30 | 600 | |
| 30-06-2022 | 21 | 02-07-2022 | 10 | 210 | |
| 01-07-2022 | 22 | 02-07-2022 | 60 | 1320 | |
| 02-07-2022 | 23 | 02-07-2022 | 20 | 460 | 2590 |
2022年7月3日求和计算
| Table B日期 | Table B数值 | Table A日期 | Table A数值 | A*B结果 | 求和 |
|---|---|---|---|---|---|
| 30-06-2022 | 21 | 03-07-2022 | 70 | 1470 | |
| 01-07-2022 | 22 | 03-07-2022 | 50 | 1100 | |
| 02-07-2022 | 23 | 03-07-2022 | 10 | 230 | |
| 03-07-2022 | 24 | 03-07-2022 | 80 | 1920 | 4720 |
预期输出
| date | values | sum |
|---|---|---|
| 29-06-2022 | 20 | null |
| 30-06-2022 | 21 | null |
| 01-07-2022 | 22 | null |
| 02-07-2022 | 23 | 2590 |
| 03-07-2022 | 24 | 4720 |
内容的提问来源于stack exchange,提问作者user3659457
相关产品推荐
相关产品推荐

