首页 > 解决方案 > 根据资格获取合同的 min(eff_start_date) 和 max(eff_end_date)

问题描述

下面是我的数据集的一个示例,我想根据 Fee_Share_Eligibility_flag 何时更改来获取 min(eff_start_date) 和 max(eff_end_date)。我知道我需要 CTE,但不确定如何去做。

Contract_Number Contract_Number_Modifier    Eff_Start_Date  Eff_End_Date    Fee_Share_Eligibility_Flag
CONTRACT1   2010    2/1/2010    9/30/2015   0
CONTRACT1   2010    10/1/2015   6/30/2018   0
CONTRACT1   2010    7/1/2018    12/31/2018  0
CONTRACT1   2010    1/1/2019    1/31/2019   1
CONTRACT1   2010    2/1/2019    6/30/2019   1
CONTRACT1   2010    7/1/2019    7/31/2021   1
CONTRACT1   2010    8/1/2021    12/31/2199  0

预期的最终结果。

Contract_Number Contract_Number_Modifier    Eff_Start_Date  Eff_End_Date    Fee_Share_Eligibility_Flag
CONTRACT1   2010    2/1/2010    12/31/2018  0
CONTRACT1   2010    1/1/2019    7/31/2021   1
CONTRACT1   2010    8/1/2021    12/31/2199  0

标签: sqlsql-servercommon-table-expression

解决方案


推荐阅读