PHP从多个表中获取数据

标签 php mysql database codeigniter

我在数据库中搜索了多个表,但没有得到正确的答案。这是我的代码。

$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/

相关文章:

php - 单击 laravel/mysql 中的删除按钮后无法删除该行

mysql - 错误的查询得到正确的结果

database - 对于 0 个提取的行 postgresql 返回 0 和 null

mysql - 无法从本地 RStudio 连接到 MySQL 数据库

database - 如何使用 talend 在两个代码集(枚举)之间进行映射

javascript - 错误 : undefined is not a function

php - 如何将 isset 与 is_array 结合起来

php - 在 Ajax 调用中传递包含空格的值

mysql - 读取 csv 时出现内存错误

php - 具有相关数据的旧数据库,我的 mysql 查询有问题