我在数据库中搜索了多个表,但没有得到正确的答案。这是我的代码。
$this->db->select('*');
$this->db->from('users');
$this->db->join('personal_data','personal_data.userid=users.userid','left');
$this->db->join('employed','employed.userid=users.userid','left');
$this->db->join('job_seeker','job_seeker.userid=users.userid','left');
$this->db->join('student','student.userid=users.userid','left');
$query=$this->db->get();
return $query->result();
这是显示代码。
$query=$this->search_people->find_advanced();
foreach ($query as $row) {
echo $row->userid;
}
我认为问题出在查询中,因为输出结果不符合预期。 请帮忙。
更新: 我有5张 table 1.用户。它以 userid 作为主键,并具有 fname 和 lname。 2.个人数据。它以 userid 作为外键。该表包含表 users 的所有用户 ID,并包含用户就业、job_seeker 或学生的国家信息和天气。 3.就业。该表将 userid 作为外键。但所有用户的id都不在这个表中。它包含公司等信息。 4.求职者。该表还具有 userid 作为外键。就业者中的所有 id 都不在 job_seeker 中。它有时间段和以前工作的经验。 ETC 5.学生。该表还具有 userid 作为外键。就业或 job_seeker 中的所有 id 都不在学生中。它有学校/大学、学位和预计完成日期的信息。
现在我想将所有这些信息组合在一个表中,以便我可以在 Controller 中使用它。
我目前有 5 个用户。该查询仅返回学生表的 id。
但我期待的是所有用户的 ID。
我希望这能消除困惑。
最佳答案
请调试查询以了解发生了什么。
您可以使用:$this->db->last_query();
进行调试。
希望这会对您有所帮助。
关于PHP从多个表中获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19545830/