[DB] Mysql UPDATE 에서 WHERE SUBQUERY(같은 테이블) 하기.

 오랜만에 대량건으로 DB 업데이트 할 일이 있어서... (SELECT 빼고는 간단한거라도 무섭다....)

테스트를 하는데 에러 발생. 이유는 업데이트 칠 테이블과 조건안에 있는 서브쿼리 테이블이 같아서 안됨. 구글링 하니 가상테이블로 한번 더 감싸면 됨.


update BBBB SET DEL_YN = 'Y' where IDX in 

(

select IDX FROM (

SELECT b.IDX

FROM AAAA as a

INNER JOIN BBBB as b on a.FILE_KEY = b.FILE_KEY

INNER JOIN CCCC as c on b.BBS_CATEGORY = c.CAMPUS_ID

where a.FILE_PATH like '%board2%' and a.BBS_ID != 'MOVIE' and b.DEL_YN = 'N' 

)aa);


첨에는 보라색만으로만 했는데 BBBB 테이블 땜에 안됨. 

그래서 노란색(?)으로 한번 테이블 만들었더니 됨.


참고 : https://link2me.tistory.com/932


댓글

이 블로그의 인기 게시물

[DB] Mysql 숫자 기준으로 정렬하기.

[WEB] ASP.NET System.NullReferenceException: 개체 참조가 개체의 인스턴스로 설정되지 않았습니다.

[문서] excel 체크박스 삭제