아하
생활

생활꿀팁

하얀고슴도치236
하얀고슴도치236

오라클 DB 다중 UPDATE 문의 드립니다.

오라클 DB 다중 UPDATE 문의 드립니다.

현재 하고싶은 Query 는 아래와 같습니다.

UPDATE TABLE_A

SET

(A,B,C,D) = (SELECT A,B,C,D FROM TABLE_B WHERE PK IN(SELECT PK FROM TABLE_C))

WHERE TABLE_A.PK IN(SELECT PK FROM TABLE_C )

결국 TABLE_A 의 A,B,C,D 칼럼을 서브쿼리 질의한 TABLE_B 의 내용으로 UPDATE 하고싶은것인데요.

서브쿼리한 내용이 1 Row 가 아니다 보니까

"ORA-01427: 단일 행 하위 질의에 2개 이상의 행이 리턴되었습니다." 에러와 함께 UPDATE 가 되지 않습니다.

서브쿼리를 1개 Row 만 반환되도록 하고 조건문에 따라서 여러번 반복하는 방법도 있겠습니다만...

이러한 꼼수말고 정석으로 저러한 경우 다중 옵션의 UPDATE 문을 하는 방법이 궁금합니다.

    1개의 답변이 있어요!