업데이트가 포함된 MySQL 쿼리를 실행할 때 테이블을 동일한 쿼리 내에서 데이터 원본으로 참조하면 "테이블이 두 번 지정되었습니다."라는 오류가 발생할 수 있습니다. 이 오류는 동일한 테이블이 UPDATE 문의 대상이고 업데이트 기준을 결정하는 데 사용되는 하위 쿼리에서 별도의 테이블로 나타날 때 발생합니다.
이 오류를 해결하고 원하는 테이블을 성공적으로 업데이트하려면 다음을 따르세요. 단계:
SELECT m2.branch_id FROM manager AS m2 WHERE (m2.branch_id, m2.year) IN (...)
SELECT * FROM (SELECT m2.branch_id FROM manager AS m2 WHERE (m2.branch_id, m2.year) IN (...)) AS subquery
UPDATE manager SET status = 'Y' WHERE branch_id IN ( SELECT branch_id FROM subquery );
파생 테이블을 사용하면 관리자 테이블을 대상 및 데이터 소스로 사용하여 "테이블이 두 번 지정되었습니다" 오류를 해결했습니다. 이 기술을 사용하면 하위 쿼리가 한 번만 참조되고 UPDATE 문이 성공적으로 실행될 수 있습니다.
위 내용은 MySQL 업데이트 쿼리에서 '테이블이 두 번 지정되었습니다' 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!