我发现很难编写查询以获得所需的输出。我需要获取两个连续行之间的日期差异,如果日期差异 <=6 个月并且原因代码有效“是”,那么新列应该填充值“是”,否则为“否”
我必须根据下面给出的标准用值“是”或“否”填充新列
标准 1:
对于第一行,新列值应始终为“否”从第二行开始,如果两个日期差异 <=6 moths 和原因代码有效,则新列值应为“是”,否则为“否”
,第一行和第二行的日期差异 <=6 个月,代码有效“是”,因此新列值为“是”。
第二行和第三行的日期差异 <=6 个月,但有效为“否”,因此新列值为“否”。
第三行和第四行的日期差异超过 6 个月,但有效为“是”,因此新列值为“否”。
输出应如下所示
卡斯蒂德 | 输入日期 | 代码 | 有效的 | 新列 |
---|---|---|---|---|
123 | 2020-04-11 | 商业银行 | 是的 | 不 |
123 | 2020-06-13 | 美国广播公司 | 是的 | 是的 |
123 | 2020-09-01 | 胎牛血清 | 不 | 不 |
123 | 2021-05-01 | 美国广播公司 | 是的 | 不 |
123 | 2021-07-05 | 美国广播公司 | 是的 | 是的 |
标准 2:
如果原因代码以“RQT”开头并且任何有效代码后跟 RQT(即使日期差为 6 个月且原因代码有效),则新列应为下一个连续行的“否”,输出与原样相同。
卡斯蒂德 | 输入日期 | 代码 | 有效的 | 新列 |
---|---|---|---|---|
345 | 2020-02-19 | RQT | 是的 | 不 |
345 | 2020-03-22 | 商业银行 | 是的 | 不 |
345 | 2020-06-18 | RQT | 是的 | 是的 |
345 | 2020-10-29 | 商业银行 | 是的 | 是的 |
345 | 2021-03-24 | 美国广播公司 | 是的 | 是的 |
卡斯蒂德 | 输入日期 | 代码 | 有效的 | 新列 |
---|---|---|---|---|
346 | 2020-02-19 | RQT | 是的 | 不 |
346 | 2020-03-22 | RQT | 是的 | 不 |
346 | 2020-06-18 | RQT | 是的 | 是的 |
346 | 2020-10-29 | 商业银行 | 是的 | 是的 |
346 | 2021-03-24 | RQT | 是的 | 是的 |