update와 동시에 insert를?
사실 저는 잘 사용하지 않는 방법이긴한데.. update와 동시에 insert를 사용하시는 분들이 계실까하여 ...
사실 with ~ as 구문을 통합방법은 조합하기 나름이라 insert전에 with~as를 통해 select하는 등으로도 종종 사용하긴 하는것 같습니다.
어지간하면 나누어서 쓰는게 좋다보지만..
저는 update와 insert는 별개로 봐서 어지간해서는 각각 update와 insert를 나누어 작업하는 쪽에 속합니다.
<update id="jobUpdateInsert" parameterType="map">
WITH jobUpdate AS (
UPDATE CAM
SET
CAM_ID = #{camId}
,JOB_STATUS = #{jobStatus}
,JOB_DATETIME = NOW()
WHERE CAM_ID = #{camId}
RETURNING *)
INSERT INTO
CAM_JOB_HISTORY(CAM_ID, JOB_STATUS, JOB_DATETIME)
SELECT
#{camId}
,#{jobStatus}
,NOW()
WHERE NOT EXISTS (SELECT * FROM jobUpdate)
</update>
'마니의 공부방 > Java' 카테고리의 다른 글
[java] Exception printStackTrace() 를 문자열로 (0) | 2021.01.06 |
---|---|
[java] JsonAraay null 입력 (0) | 2021.01.05 |
[spring] profiles 개발용/서버용 나누어 적용하기 (1) | 2020.12.31 |
[java] excel 셀안의 텍스트 색상 적용 (0) | 2020.12.30 |
[Spring] yml 암호화 - @ConfigurationPropertiesBinding 사용 (0) | 2020.12.28 |