我有一张下表,其中列出了每项保单的交易。每项保单的其中一行都标有“Y”,表示该保单存在某个“问题”。我想创建一个新列,将标有“Y”的行以及标有 1 的同一保单的后续行标记为“Y”。
基本上,对于每项政策,在政策生命周期的某个阶段都会出现一个问题,我想识别标记为“Y”的 PolicyVersion 以及标记为“Y”的行之后的同一政策的任何后续行。
我不太清楚正确的分区
保单号 | 交易日期 | 政策版本 | 此版本上发现的问题 | 期望结果 |
---|---|---|---|---|
A12345 | 2023-01-01 | 1 | 否 | 0 |
A12345 | 2023-06-01 | 2 | 是 | 1 |
A12345 | 2023-07-01 | 3 | 否 | 1 |
A12345 | 2024-08-01 | 4 | 否 | 1 |
A12346 | 2023-02-01 | 1 | 否 | 0 |
A12346 | 2023-03-01 | 2 | 否 | 0 |
A12346 | 2023-07-01 | 3 | 否 | 0 |
A12346 | 2023-08-01 | 4 | 是 | 1 |
A12346 | 2024-01-01 | 5 | 否 | 1 |
我们可以
SUM()
在这里使用窗口函数:上述逻辑
SUM()
对每个策略进行滚动求和,每当某个策略出现问题时,求和就加一。