显示用户就业历史 - MySQL,CodeIgniter

时间:2017-03-14 17:55:32

标签: mysql codeigniter

我尝试创建一个SQL查询,从多个表中获取记录,显示用户的就业历史。

我的加入声明中出现错误,表示表的别名出错。

  

错误号码:1066

     

不是唯一的表/别名:'角色'

$this->db->select('*');
    $this->db-> from ('project_roles AS role' , 'project_tasks AS task', 'project AS proj');
    $this->db-> join ('employee_assignment AS ea', 'role.roleID = ea.roleID');
    $this->db-> join ('role', 'task.taskID = role.taskID ');
    $this->db-> join ('task', 'proj.projectID = task.projectID');
    $this->db-> where('ea.accountID', $accountID);

如果有人能够确定我做错了什么,那就太好了。所有表都包含此查询中使用的字段。我只是不知道为什么它不能识别角色......除非它是迄今为止发现的第一个错误。

感谢。

1 个答案:

答案 0 :(得分:1)

而不是将所有表放在from中将它们放在连接中

$this->db->select('*');
$this->db-> from ( 'project AS proj');
$this->db-> join ('project_tasks AS task', 'proj.projectID = task.projectID');
$this->db-> join ('project_roles AS role', 'task.taskID = role.taskID ');
$this->db-> join ('employee_assignment AS ea', 'role.roleID = ea.roleID');
$this->db-> where('ea.accountID', $accountID);