> 데이터 베이스 > MySQL 튜토리얼 > SQL 오류 1066을 해결하는 방법: JOIN의 고유하지 않은 테이블 별칭?

SQL 오류 1066을 해결하는 방법: JOIN의 고유하지 않은 테이블 별칭?

Patricia Arquette
풀어 주다: 2025-01-02 21:07:39
원래의
619명이 탐색했습니다.

How to Solve SQL Error 1066: Non-Unique Table Aliases in JOINs?

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿