728x90
오라클 update 에 select 이용시
힌트절이 11g 부터 사용이 안되는 부분이 있다.
그리고 구문 역시 정상이 아닐경우
ORA-01779
키보존 에러가 나올수 있다
그럴경우 merge 문을 이용해서 update를
시도하면 된다. 물론 merge 문이 없다면
구문을 다시 만들어야 되겟지만...
MERGE INTO 대상테이블 a
USING (참조테이블) c
ON (a.조인컬럼= c.조인컬럼
and a.조인컬럼 = c.조인컬럼)
WHEN MATCHED THEN
UPDATE SET
a.변경컬럼1 = c.값1
, a.변경컬럼2 = c.값2
;
728x90
'sql' 카테고리의 다른 글
10g 부터 지원하는 wm_concat함수 사용시 주의 사항 (0) | 2014.09.19 |
---|---|
오라클 누계 합수 (0) | 2014.05.13 |
오라클 숫자 혹은 문자 고정된 자리수 채우기 (0) | 2014.03.26 |
오라클 특정 컬럼 순서 매기기 ROW_NUMER()OVER(PARTITION) (0) | 2014.03.25 |
오라클 여러row 한 컬럼에 넣기2 (0) | 2014.03.19 |