반응형
MySQL / You can't specify target table 'TABLE' for update in FROM clause
데이터 때문에 생긴 오류로 의심되서 업데이트를 쳐보는데 MySQL 에러가 떴다. 쿼리도 매우 단순하기 그지 없는데 뭘까?
update TABLE_NAME
set COL_NAME = (select COL_NAME from TABLE_NAME where COL_ID = 882825)
where AR_ID = 986178;
혹시나 서브쿼리에 alias
를 줘야하나 싶어서 넣어 봤는데도 안된다. 검색을 해보니, 서브쿼리를 한번 더 감싸줘야 한단다. 오라클에서는 상관 없던 건데 MySQL로 넘어오니 이렇게 사소하게 다른 점이 많다.
update TABLE_NAME ar
set COL_NAME = (select COL_NAME from (select COL_NAME from TABLE_NAME far where COL_ID = 882825) far2)
where COL_ID = 986178;
서브쿼리를 한번 더 감쌀 때 alias 줘야한다는 것도 잊지 말기 ㅋㅋㅋ (여기서는 far2
)
반응형
'프로그래밍 > 이것저것 일하면서' 카테고리의 다른 글
Tomcat 8 / tomcat rfc 7230 rfc 3986 오류 (0) | 2018.10.02 |
---|---|
윈도10 Bash에서 C드라이브 접근하기 (0) | 2018.09.19 |
React 공식 사이트, 문서, 튜토리얼 한글 번역 (React, React.js, React korea) (0) | 2018.09.17 |
Internet Explorer 9 (IE9), 인터넷 익스플로러 9 무설치 버전 다운로드 (3) | 2017.11.20 |
IE9에서 ajax 통신 시 'No transport' 오류 발생 (0) | 2017.10.20 |