집 >데이터 베이스 >MySQL 튜토리얼 >SQL 오류 1066을 해결하는 방법: JOIN의 고유하지 않은 테이블 별칭?
SQL 오류 1066: JOIN 쿼리에서 고유하지 않은 테이블 별칭 문제 해결
SQL 오류 1066이 발생하는 경우 "고유한 테이블/별칭이 아닙니다. "는 동일한 테이블이 여러 번 나타나는 경우 JOIN에서 이를 구별하기 위해 고유한 별칭 없이 사용됨을 나타냅니다. query.
다음 예제 코드를 살펴보세요.
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" 테이블이 두 번 조인되어 오류가 발생하는 것을 알 수 있습니다. 이 문제를 해결하려면 테이블의 두 번째 항목에 고유한 별칭을 제공해야 합니다.
다음 코드는 수정된 쿼리를 보여줍니다.
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'
고유한 별칭 "u2를 제공하여 "를 두 번째 "user" 테이블에 추가하면 오류가 해결되어 성공적으로 쿼리를 실행할 수 있습니다.
위 내용은 SQL 오류 1066을 해결하는 방법: JOIN의 고유하지 않은 테이블 별칭?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!