오류 1066: 중복된 테이블/별칭 '사용자'
SQL 쿼리를 실행할 때 오류 1066(고유한 테이블이 아님/ 별칭: '사용자'). 이 오류는 쿼리의 '사용자' 테이블이 별도의 별칭 없이 여러 번 참조되었음을 나타냅니다.
문제:
다음 테이블 구조를 고려하세요.
Article Section Category User id | title id | title id | title id | name ------------ ------------ ------------ ------------ 1 | Article 1 10 | Section 1 100 | Category 1 1 | Author
그리고 다음 SQL 쿼리는 다음과 같습니다.
SELECT article.*, section.title, category.title, user.name, user.name FROM article INNER JOIN section ON article.section_id = section.id INNER JOIN category ON article.category_id = category.id INNER JOIN user ON article.author_id = user.id LEFT JOIN user ON article.modified_by = user.id WHERE article.id = '1'
이 쿼리를 실행하면 'user' 테이블이 다른 별칭을 지정하지 않고 두 번 조인되었기 때문에 오류 1066이 발생합니다.
해결책:
이 문제를 해결하려면 고유한 별칭을 'u2'와 같은 'user' 테이블의 두 번째 인스턴스:
SELECT article.*, section.title, category.title, user.name, u2.name FROM article INNER JOIN section ON article.section_id = section.id INNER JOIN category ON article.category_id = category.id INNER JOIN user ON article.author_id = user.id LEFT JOIN user u2 ON article.modified_by = u2.id WHERE article.id = '1'
위 내용은 MySQL 오류 1066 해결 방법: 중복된 테이블/별칭 '사용자'?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!