집 >데이터 베이스 >MySQL 튜토리얼 >내 SQL 쿼리가 '인식할 수 없는 이름: 직원'을 반환하는 이유는 무엇입니까?
SQL 쿼리에서 '인식할 수 없는 이름: 직원' 오류가 발생했나요? 이 일반적인 문제는 테이블 별칭 누락이라는 단순한 실수로 인해 발생하는 경우가 많습니다. 문제와 해결 방법을 살펴보겠습니다.
오류 메시지는 테이블이 올바르게 정의되었다고 생각하더라도 데이터베이스가 employees
테이블을 찾을 수 없음을 나타냅니다. 근본 원인은 일반적으로 특히 조인을 사용할 때 쿼리 내에서 테이블을 참조하는 방법에 있습니다.
다음 문제가 있는 쿼리를 생각해 보세요.
<code class="language-sql">SELECT employees.name AS employee_name, employees.role AS employee_role, departments.name AS department_name FROM `strange-calling-318804.employee_data.Employees` JOIN `strange-calling-318804.employee_data.departments` ON employees.department_id = departments.department_id</code>
JOIN
조건이 employees
과 departments
간의 관계를 올바르게 지정하지만 SQL 엔진은 employees
이 명시적으로 정의되지 않았기 때문에 SELECT
문 내의 테이블 별칭으로
해결책은? 테이블 별칭을 추가하세요! 수정된 쿼리는 다음과 같습니다.
<code class="language-sql">SELECT e.name AS employee_name, e.role AS employee_role, d.name AS department_name FROM `strange-calling-318804.employee_data.Employees` as e JOIN `strange-calling-318804.employee_data.departments` as d ON e.department_id = d.department_id</code>
as e
as d
및
위 내용은 내 SQL 쿼리가 '인식할 수 없는 이름: 직원'을 반환하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!