MySQL错误1054未知列' persons.PersonID' in on条款

时间:2016-03-05 14:10:21

标签: mysql mysql-workbench

这里我试图在MySQL编辑器中运行一个查询并遇到一个问题

这是我的查询

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

任何帮助将不胜感激

2 个答案:

答案 0 :(得分: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被视为表别名。

答案 1 :(得分:0)

检查Persons表中是否存在PersonID列。确保拼写与表格结构中的拼写完全相同。还要检查案例。某些IDE区分大小写。