SQL 오류 (1093): You can't specify target table for update in FROM clause


SQL 오류 (1093): You can't specify target table for update in FROM clause

MySQL DB에서 서브쿼리를 이용한 업데이트를 실행할 때 발생되는 에러이다.예를 들어, A라는 테이블의 특정 컬럼을 업데이트할 때 조건문 Where의 서브쿼리에 같은 A 테이블을 참조할 때 발생하는데, 이럴 경우에는 침착하게 서브쿼리문을 한번 더 묶어서 업데이트하면 된다.위의 예시는 상당히 간단하지만 아마도 temp라고 별명을 준 서브쿼리안에서는 업데이트대상의 테이블과 다른 테이블을 조인하여 상당히 복잡한 쿼리문을 사용했고 그 결과 얻는 컬럼을 대상으로 본인의 특정컬럼을 업데이트하려 했을 것이다.왜 서브쿼리절을 한번 더 묶어야 되는지는 모르지만 여튼 상기방법으로 해결가능...

SQL 오류 (1093): You can't specify target table for update in FROM clause에 대한 요약내용입니다.

자세한 내용은 아래에 원문링크를 확인해주시기 바랍니다.



원문링크 : SQL 오류 (1093): You can't specify target table for update in FROM clause