如何获取Running Total等于或最接近对应Stock较大值的数据记录
需求实现:基于Part维度筛选记录
原始数据
注意:Running Total 是按 Part 维度计算的
| Part | Quantity | Running Total | Stock |
|---|---|---|---|
| ABC | 5 | 5 | 45 |
| ABC | 10 | 15 | 45 |
| ABC | 12 | 27 | 45 |
| ABC | 16 | 43 | 45 |
| ABC | 10 | 53 | 45 |
| ABC | 5 | 58 | 45 |
| DEF | 5 | 5 | 15 |
| DEF | 10 | 15 | 15 |
| DEF | 10 | 25 | 15 |
| DEF | 5 | 30 | 15 |
需求说明
需筛选符合以下条件的记录:找到对应Part的Stock值,取Running Total等于该Stock值,或是最接近且大于Stock值的那条记录,同时保留该记录及之前的所有同Part记录。
- 示例1:Part ABC的Stock值为45,最接近且大于45的Running Total是53,因此保留该条及之前所有ABC记录;
- 示例2:Part DEF的Stock值为15,存在Running Total等于15的记录,因此保留该条及之前所有DEF记录。
预期输出
| Part | Quantity | Running Total | Stock |
|---|---|---|---|
| ABC | 5 | 5 | 45 |
| ABC | 10 | 15 | 45 |
| ABC | 12 | 27 | 45 |
| ABC | 16 | 43 | 45 |
| ABC | 10 | 53 | 45 |
| DEF | 5 | 5 | 15 |
| DEF | 10 | 15 | 15 |
内容的提问来源于stack exchange,提问作者user12490809
相关产品推荐
相关产品推荐

