【问题标题】:Error Code: 1054. Unknown column错误代码:1054。未知列
【发布时间】:2011-11-12 02:06:45
【问题描述】:

我有以下 SQL 语句:

SELECT efforts.user_id, project_tasks.task_name, sum(hours) 
FROM efforts, users, project_tasks
INNER JOIN PROJECT_TASKS pu ON efforts.project_task_id = pu.id  
INNER JOIN USERS u ON efforts.users_id = u.id
WHERE project_tasks.project_id = '2'; 

当我运行它时,我收到以下错误:

Error Code: 1054. Unknown column 'efforts.project_task_id' in 'on clause'

为什么会出现这个错误?

Project_task_id 属于努力表

Image of my efforts table

更新:

SELECT u.full_name, pu.task_name, hours 
FROM efforts
INNER JOIN project_tasks pu ON efforts.project_task_id = pu.id   
INNER JOIN users u ON efforts.user_id = u.id 
GROUP BY user_id, task_name

【问题讨论】:

  • 你在努力表中有这列吗?
  • 请提供努力表的表描述..
  • 我添加了下面的图片来显示我的表格
  • 我的查询版本有效吗?
  • 我已经编辑了我的帖子,并带有指向我的努力表的链接

标签: sql mysql-error-1054


【解决方案1】:

请注意,据我所知,MySQL 对表名(而不是列名)区分大小写...这可能会在您的查询中造成一些麻烦...?随着 StevieG 的修正

【讨论】:

  • 您的建议确实有效并解决了我正在努力解决的错误。
【解决方案2】:

你的语法错了,应该是:

SELECT efforts.user_id, pu.task_name, sum(hours)  
FROM efforts
INNER JOIN PROJECT_TASKS pu ON efforts.project_task_id = pu.id   
INNER JOIN USERS u ON efforts.user_id = u.id 
WHERE pu.project_id = '2';  

【讨论】:

  • 最后一行应该是:WHERE pu.project_id = '2';
  • @Klas Lindbäck 我试过了,但没用我收到了这个错误Error Code: 1054. Unknown column 'project_tasks.task_name' in 'field list'
  • 谢谢,好的,我试过了,现在它抛出了这个错误Error Code: 1054. Unknown column 'efforts.users_id' in 'on clause'
  • 我试过了,谢谢。我扩展了查询,使其如下所示。我已经更新了我的帖子
猜你喜欢
  • 2015-08-19
  • 1970-01-01
  • 2016-02-09
  • 1970-01-01
  • 2016-03-19
  • 1970-01-01
  • 1970-01-01
  • 2021-02-18
  • 2020-11-04
相关资源
最近更新 更多