使用join-in-codeigniter从3个表中获取不同的记录

使用join-in-codeigniter从3个表中获取不同的记录,codeigniter,join,left-join,inner-join,outer-join,Codeigniter,Join,Left Join,Inner Join,Outer Join,我有三张桌子 案例、客户、出席 万一 id开始日期结束日期客户端id状态 2012年12月30日2013年01月30日新开工 2 2012-12-31 2013-01-31 2试用期 在客户中 id名称dob性别状态 1汤姆1987-01-30ma 2.1985-01-31 F D 出席 id客户端\u id日期状态 1 2013-01-30 A 212013-01-31页 我需要这样的结果 案例\u id案例\u开始日期案例\u结束日期客户\u id名称 附件日期附件状态 1 2012-12-

我有三张桌子 案例、客户、出席

万一

id开始日期结束日期客户端id状态

2012年12月30日2013年01月30日新开工

2 2012-12-31 2013-01-31 2试用期

在客户中

id名称dob性别状态

1汤姆1987-01-30ma

2.1985-01-31 F D

出席

id客户端\u id日期状态

1 2013-01-30 A

212013-01-31页

我需要这样的结果

案例\u id案例\u开始日期案例\u结束日期客户\u id名称 附件日期附件状态

1 2012-12-30 2013-01-30 1汤姆 2013-01-302013-01-31 A,P

这可能吗?我是一个自学成才的人,我对加入查询没有什么好主意,请任何人帮帮我….

试试这个

$this->db->select('ca.*,ci.Name,a.date,a.status');
$this->db->from('cases'.' ca');
$this->db->join('clients'.' ci','ca.client_id=ci.id','left');
$this->db->join('attendance'.' a','a.client_id=ci.id','left');
return $this->db->get();

如果你想了解更多关于加入和活动记录的信息,请浏览以下内容。

这里有一个非常简单的示例,让你开始了解任何数量的加入常见乐趣 构造码 将
$joins
构造为数组:

$joins = array(
    array(
        'table' => 'table2',
        'condition' => 'table2.id = table1.id',
        'jointype' => 'LEFT'
    ),
);
将联接作为数组处理的函数示例:

public function get_joins($table, $columns, $joins)
{
    $this->db->select($columns)->from($table);
    if (is_array($joins) && count($joins) > 0)
    {
        foreach($joins as $k => $v)
        {
            $this->db->join($v['table'], $v['condition'], $v['jointype']);
        }
    }
    return $this->db->get()->result_array();
}
必须有1001个关于如何连接表的问题已经回答了。请搜索或阅读有关表联接/SQL/数据库的书籍。一个好的开始可能是右边的“相关”列。