0

I have a SELECT statement that pulls records this way.

SELECT /*+PARALLEL(16)*/ CONT_ID, 
                         LOCATION_GROUP_ID, 
                         CONT_METH_TP_CD,
                         END_DT
FROM   (SELECT A.*, 
              DENSE_RANK() OVER ( 
               partition BY CONT_ID, CONT_METH_TP_CD 
               ORDER BY LAST_UPDATE_DT DESC) AS RNK 
          FROM   (SELECT LG.CONT_ID, 
                         LG.LOCATION_GROUP_ID, 
                         CG.CONT_METH_TP_CD, 
                         LG.LAST_UPDATE_DT,
                         LG.END_DT
                  FROM   HUB.LOCATIONGROUP LG, 
                         HUB.CONTACTMETHODGROUP CG, 
                         HUB.CONTACT C 
                  WHERE  LG.LOCATION_GROUP_ID = CG.LOCATION_GROUP_ID 
                         AND LG.CONT_ID = C.CONT_ID 
                         AND LG.END_DT IS NULL 
                         AND C.INACTIVATED_DT IS NULL
                ) A
      ) 
WHERE  RNK > 1;

After obtaining these data, I have to go back to set my END_DT as SYSDATE, which will need another query.

Can I set my END_DT directly in this same query once I obtain the results, without going to another query?

Mike
  • 721
  • 1
  • 17
  • 44

0 Answers0