티스토리 뷰
IT/DATABASE
[mysql] ~ is specified twice, both as a target for 'UPDATE' and as a separate source for data ~
김보야 2017. 3. 13. 14:41~ is specified twice, both as a target for 'UPDATE' and as a separate source for data ~
~ is specified twice, both as a target for 'DELETE' and as a separate source for data ~
서브쿼리에서 조회한 테이블과 동일한 테이블의 값을 변경하려고 할 때 발생한다.
해당 서브쿼리에 ALIAS를 부여한 뒤 SELECT문 으로 한번 더 감싸면 해결된다.
ex)
1 2 3 4 5 6 7 8 9 10 11 12 13 | UPDATE X_TABLE SET USE_YN = 'Y' WHERE SOURCE_ID = ( SELECT * FROM ( SELECT XT.SOURCE_ID FROM X_TABLE XT ,Y_TABLE YT WHERE XT.SOURCE_ID = YT.SOURCE_ID AND XT.SOURCE_NAME = 'SAMPLE' AND YT.PROG_NAME = 'P00029830M001023' ) TMP ) | cs |
'IT > DATABASE' 카테고리의 다른 글
오라클 현재 계정의 테이블들의 테이블스페이스 변경 (0) | 2017.08.11 |
---|---|
[mysql] SQL 오류 (1248): Every derived table must have its own alias (0) | 2017.03.13 |
Oracle, MySQL 날짜함수 비교 (0) | 2016.12.20 |
오라클에서 데이터 제외한 테이블 스키마(schema)만 뽑아내기 (0) | 2016.05.17 |
오라클에서 Split(구분자로 자르기)처럼 사용하기 (0) | 2016.05.17 |
댓글