도움받는신입개발자
66
2020-01-23 14:36:38
1
149

오라클 쿼리 ,,,mysql로 바꾸는데 도와주세요 ㅠㅠ


안녕하세요 초짜 완전 신입입니다 ㅠ

오라클로 짠 쿼리를 mysql로 바꿔야되는데 ㅠ

merge만 바꾸면된다고 하는데 전혀 감을 못잡겠습니다 ㅠ

고수님들 제발 도와주세요 ㅠ




<update id="saveProgramAuthByRole" parameterType="FormObject">

MERGE INTO S_PROG_AUTH_TBL A

USING (

    VALUES 

    <foreach collection="AUTH_LIST" item="item" separator=",">

    (

    CAST(#{item.PROGRAM_ID} AS VARCHAR(6)),

CAST(#{item.ROLE_ID} AS VARCHAR(3)),

CAST(#{item.AUTH_ID} AS VARCHAR(5))

    )

    </foreach>

    ) AS B 

    (PROGRAM_ID

, ROLE_ID

, AUTH_ID)

    ON (A.PROGRAM_ID = B.PROGRAM_ID AND A.ROLE_ID=B.ROLE_ID)

   

WHEN NOT MATCHED THEN

INSERT(

PROGRAM_ID

, ROLE_ID

, AUTH_ID

, CREATE_USER

, CREATE_DATE

) VALUES (

B.PROGRAM_ID

, B.ROLE_ID

, B.AUTH_ID

, #{SESSION_USER_ID}

, CURRENT_TIMESTAMP

)

WHEN MATCHED THEN

UPDATE SET

AUTH_ID = B.AUTH_ID

, MODIFY_USER = #{SESSION_USER_ID}

, MODIFY_DATE = CURRENT_TIMESTAMP

</update>

0
0