2015-05-27 5 views
0

Я пытаюсь понять, почему я получаю дублирующее имя столбца в этом запросе. Я чувствую, что я правильно префикс моих условий поиска и не должен получать эту ошибку. Пожалуйста, порекомендуйте.ERROR 1060 (42S21): Дублируемое имя столбца 'eid'

Модель

Emp(eid:integer, ename:varchar, age:integer, salary:integer) 
Works(did:integer, eid:integer) 
Dept(did:integer, managerid:integer) //managerid is foreign key to eid 

Запрос

CREATE VIEW Manager AS 
SELECT e.eid, e.ename, e2.eid, e2.ename 
FROM Emp AS e, 
    Dept AS d 
     LEFT JOIN Emp AS e2 ON d.managerid = e2.eid; 

ответ

1

Попробуйте ALIAS в своих областях. См. Ниже:

CREATE VIEW Manager AS 
SELECT 
     e.eid AS eid1, 
     e.ename AS ename1, 
     e2.eid AS eid2, 
     e2.ename AS ename2 
FROM Emp AS e, 
    Dept AS d 
LEFT JOIN Emp AS e2 ON d.managerid = e2.eid2; 
+0

Спасибо, работал как шарм – cWillBeTheDeathOfMe

+0

Ваш прием. По крайней мере, принимайте это как ответ, чтобы закрыть вопрос. – Rigel1121

+0

Я когда-то прохожу время. – cWillBeTheDeathOfMe

Смежные вопросы