728x90
반응형
원인
MySQL 은 Oracle 과는 달리 UPDATE 나 DELETE 시
자기 테이블의 데이터를 바로 사용 못하므로 아래와 같은 SQL 을 실행시 1093 에러가 발생함.
UPDATE DEVEL_ANA_DICTIONARY
SET USE_YN = 'Y'
WHERE WORD_NO = ( SELECT WORD_NO
FROM DEVEL_ANA_DICTIONARY
WHERE WORD_NM = '007가방' );
처리
Sub Query 를 하나 더 넣고
Sub Query 결과를 임시 테이블로 만든후에 실행하면 해결됨.
UPDATE DEVEL_ANA_DICTIONARY
SET USE_YN = 'Y'
WHERE WORD_NO = ( SELECT TEMP.*
FROM (SELECT WORD_NO
FROM DEVEL_ANA_DICTIONARY
WHERE WORD_NM = '007가방'
) TEMP );
728x90
반응형
'개발중 > MYSQL' 카테고리의 다른 글
[MYSQL] Transaction And Lock (트랜잭션과 잠금) (MyISAM / InnoDB) (0) | 2023.03.04 |
---|---|
트랜잭션이 뭐냐면 🎨 ACID가뭐냐면 🎨 트랜잭션은 필요한가 ? (0) | 2022.11.09 |
[mysql] 일, 주, 월, 년, 분기 통계 함수 🔊 🔊 🔊 (0) | 2022.10.24 |
[MYSQL] 하위요소들 모두 구해주라 (0) | 2022.10.12 |
Mysql5 에서 rownum 과 그룹별 rownum (1) | 2022.09.02 |