MySQL错误1054未知列'persons.PersonID' in on子句[重复]

Posted

技术标签:

【中文标题】MySQL错误1054未知列\'persons.PersonID\' in on子句[重复]【英文标题】:MySQL Error 1054 Unknown Column 'persons.PersonID' in on clause [duplicate]MySQL错误1054未知列'persons.PersonID' in on子句[重复] 【发布时间】:2016-06-19 07:32:30 【问题描述】:

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

这是我的查询

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

任何帮助将不胜感激

【问题讨论】:

***.com/questions/4796872/full-outer-join-in-mysql 【参考方案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 JOINfull 被视为表别名。

【讨论】:

【参考方案2】:

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

【讨论】:

以上是关于MySQL错误1054未知列'persons.PersonID' in on子句[重复]的主要内容,如果未能解决你的问题,请参考以下文章

#1054 - MySQL 中“where 子句”中的未知列“proximite”

错误 #1054 - 尝试将 CSV 文件导入数据库时​​,字段列表中出现未知列

mysql #1054 使用 phpmyadmin 的未知列 [关闭]

错误代码:1054 'where 子句'中的未知列'billId'

错误代码:1054。“字段列表”中的未知列

在查询中使用别名时出现“#1054 - 未知列”错误?