제5 외국어 영역2008. 3. 14. 01:44
<update id="modTelNoStat" parameterClass="map">
     UPDATE  TCR_TELNO_MT  A
      SET (
            A.EFT_STRT_DT
          , A.EFT_STRT_TM
          , A.TEL_NO_STAT
          , A.TEL_STAT_CHNG_RESN
          ,A.SVC_CMPS_ID
          ,A.SUBS_RCPT_ID
          ,A.APPL_ID
          ,A.CHG_PSN_ID
          ,A.CHG_DTTM      ) =
          (SELECT
                    #EFT_STRT_DT#
                  , #EFT_STRT_TM#
                  <isNotNull property="TEL_NO_QTA_STAT">
                  , #TEL_NO_QTA_STAT#
                  , '2'
                  </isNotNull>
                  <isNull property="TEL_NO_QTA_STAT">
                  , DECODE(#CTRT_STAT#,'10','5','1')
                  , DECODE(#CTRT_STAT#,'10','4','5')
                  </isNull>
                  , B.SVC_CMPS_ID
                  , B.SUBS_RCPT_ID
                  , #_APPL_ID_#
                  , #CHG_PSN_ID#
                  , TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS')
                FROM
                    TCC_SVC_CMPS_MT B
                    INNER JOIN  TCC_TELNO_USE_HIST C
                ON  B.SVC_CMPS_ID  = C.SVC_CMPS_ID
                AND C.EFT_END_DT   = '99991231'
                AND C.EFT_END_TM   = '235959'
                <isNotNull property="TEL_NO_QTA_STAT">
                AND C.TEL_NO_QTA_STAT  = #TEL_NO_QTA_STAT#
                </isNotNull>
                <isNull property="TEL_NO_QTA_STAT">
                AND C.TEL_NO_QTA_STAT  = DECODE(#CTRT_STAT#,'10','5','1')
                </isNull>
                WHERE
                     B.CTRT_ID      = #CTRT_ID#
                 AND B.EFT_END_TM   = '235959'
                 AND B.EFT_END_DT   = '99991231')
      WHERE
            EXISTS
            (SELECT 'X' FROM
                    TCC_SVC_CMPS_MT B
                    INNER JOIN  TCC_TELNO_USE_HIST C
                ON  B.SVC_CMPS_ID  = C.SVC_CMPS_ID
                AND C.EFT_END_DT   = '99991231'
                AND C.EFT_END_TM   = '235959'
                <isNotNull property="TEL_NO_QTA_STAT">
                AND C.TEL_NO_QTA_STAT  = '3'
                </isNotNull>
                <isNull property="TEL_NO_QTA_STAT">
                AND C.TEL_NO_QTA_STAT  = '4'
                </isNull>
                WHERE
                     B.CTRT_ID      = #CTRT_ID#
                 AND B.EFT_END_TM   = '235959'
                 AND B.EFT_END_DT   = '99991231'
                 AND C.TEL_NO = A.TEL_NO )
</update>
Posted by is윤군
TAG

댓글을 달아 주세요