2016-03-05 87 views
1

我在这里试图运行在MySQL编辑一个查询并得到一个问题MySQL错误1054未知列在第

这里persons.PersonID'是我的查询

select * 
FROM my_db.persons FULL JOIN 
my_db.employee 
ON persons.PersonID=employee.PersonID; 

任何帮助将是赞赏

+5

http://stackoverflow.com/questions/4796872/full-outer-join-in-mysql – Mihai

回答

1

MySQL不支持FULL JOIN,所以也许就是这个问题。在任何情况下,我更喜欢短表的别名:

select * 
FROM my_db.persons p LEFT JOIN 
    my_db.employee e 
    ON p.PersonID = e.PersonID; 

这当然,假定PersonID列两个表中存在。

哦,我明白你为什么得到错误。或许,这将解释:

select * 
FROM my_db.persons full JOIN 
    my_db.employee e 
    ON full.PersonID = e.PersonID; 

也就是说,因为MySQL不支持FULL JOIN,将full被视为一个表的别名。

+0

感谢您的帮助 –

0

检查Persons表上是否存在PersonID列。确保拼写与表结构中的拼写完全相同。另外检查案件。一些IDE区分大小写。