SELECT SETID , RESOURCE_CATEGORY , EFFDT AS EFF_ST_DT , CASE WHEN LEAD(CONCAT(SETID ,RESOURCE_CATEGORY) ,1 ,NULL) OVER ( ORDER BY SETID ,RESOURCE_CATEGORY ,EFFDT) <> CONCAT (SETID ,RESOURCE_CATEGORY) THEN TO_DATE('9999-12-31' , 'YYYY-MM-DD') ELSE CASE WHEN LEAD(EFFDT ,1 ,NULL) OVER ( ORDER BY SETID ,RESOURCE_CATEGORY ,EFFDT) = EFFDT THEN EFFDT ELSE LEAD(EFFDT-1 ,1 ,TO_DATE('9999-12-31' , 'YYYY-MM-DD')) OVER ( ORDER BY SETID ,RESOURCE_CATEGORY ,EFFDT) END END AS EFF_END_DT FROM PS_PROJ_CATG_TBL ORDER BY 1 , 2 , 3
|