> 데이터 베이스 > MySQL 튜토리얼 > MySQL 오류 1066 해결 방법: 중복된 테이블/별칭 '사용자'?

MySQL 오류 1066 해결 방법: 중복된 테이블/별칭 '사용자'?

Mary-Kate Olsen
풀어 주다: 2025-01-03 12:51:39
원래의
680명이 탐색했습니다.

How to Resolve MySQL Error 1066: Duplicated Table/Alias 'user'?

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

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