我不确定为什么会收到此错误消息 ERROR 1054 (42S22):“field list”中的未知列“employee”。
这是员工表的数据类型和插入的值:
mysql> create table employee (`employee-name` char(30), `street` char(30),
`city` char(30));
mysql> insert into employee values ('John Smith', 'Street A', 'City 1');
mysql> insert into employee values ('Arya Stark', 'Street B', 'City 2');
mysql> insert into employee values ('Barry Allen', 'Street C', 'City 3');
mysql> insert into employee values ('Wanda Maximoff', 'Street D', 'City 4');
mysql> insert into employee values ('Raven Roth', 'Street E', 'City 5');
这是工作表的数据类型和插入的值:
mysql> create table works (`employee-name` char(30), `company-name` char(50),
`salary` decimal(20,2));
mysql> insert into works values ('John Smith', 'MyBank', '10000');
mysql> insert into works values ('Arya Stark', 'First Bank Corporation',
'20000');
mysql> insert into works values ('Barry Allen', 'MyBank', '17000');
mysql> insert into works values ('Wanda Maximoff', 'YourBank', '125000');
mysql> insert into works values ('Raven Roth', 'MyBank', '20000');
我从实验室实践中得到的问题是:查找姓名、街道地址、 为“第一银行”工作的所有员工的居住城市 公司并赚取超过 10,000 美元
每次我输入此内容时都会出现错误:
select employee.employee-name, employee.street, employee.city from
employee, works
where employee.employee-name=works.employee-name
and company-name = 'First Bank Corporation' and salary > 10000;
ERROR 1054 (42S22): Unknown column 'employee.employee' in 'field list'
最佳答案
您需要转义包含 -
等特殊字符的表/列名称
select employee.`employee-name`...
此外,不要再使用旧的连接样式。它在 20 年前被显式联接所取代。
select e.`employee-name`, e.street, e.city
from employee e
join works w on e.`employee-name` = w.`employee-name`
where `company-name` = 'First Bank Corporation'
and salary > 10000
关于mysql - 错误 1054 (42S22) : Unknown column 'employee' in 'field list' in MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51435415/