INSERT INTO cd_mng ( cd , up_cd , cd_nm , cd_vl , cd_expln , cd_grd , cd_sn , use_yn , sys_pvsn_yn , rgtr , reg_dt ) VALUES ( #{cd} , #{upCd} , #{cdNm} , #{cdVl} , #{cdExpln} , #{cdGrd} , #{cdSn} , 'Y' , 1 , #{rgtr} , NOW() ) SELECT cd , up_cd , cd_nm , cd_vl , cd_expln , cd_grd , cd_sn , use_yn , sys_pvsn_yn , rgtr , TO_CHAR(reg_dt, 'YYYY-MM-DD HH24:MI') AS reg_dt , mdfr , TO_CHAR(mdfcn_dt, 'YYYY-MM-DD HH24:MI') AS mdfcn_dt FROM cd_mng UPDATE cd_mng SET cd = #{cd} , up_cd = #{upCd} , cd_nm = #{cdNm} , cd_vl = #{cdVl} , cd_expln = #{cdExpln} , cd_grd = #{cdGrd} , cd_sn = #{cdSn} , use_yn = #{useYn} , mdfr = #{mdfr} , mdfcn_dt = NOW() WHERE cd = #{originCd} UPDATE cd_mng SET up_cd = #{cd} WHERE up_cd = #{originCd} WITH RECURSIVE CodeHierarchy AS ( SELECT cd , up_cd FROM cd_mng WHERE cd = #{cd} UNION ALL SELECT cm.cd , cm.up_cd FROM cd_mng cm JOIN CodeHierarchy ch ON cm.up_cd = ch.cd ) DELETE FROM cd_mng WHERE cd IN (SELECT cd FROM CodeHierarchy) SELECT cd AS id , up_cd AS up_id , cd_nm AS nm FROM cd_mng UPDATE cd_mng SET up_cd = #{upCd} , cd_grd = #{cdGrd} , cd_sn = #{cdSn} , mdfr = #{mdfr} , mdfcn_dt = NOW() WHERE cd = #{cd}