Codeigniter从数据库的多个表中选择数据不参加

时间:2018-12-07 12:40:00

标签: mysql codeigniter-3

所以我的问题是:

是否可以在一个查询中从不同表中选择所有数据?

示例1:

$query = $this->db->get('table1');
$query = $this->db->get('table2');
$query = $this->db->get('table3');

return $query->result();

示例2:

$this->db->select('*');
$this->db->from('table1', 'table2', 'table3');

$query = $this->db->get();

return $query->result();

我认为第二个例子是可能的。如果不是,我想问问你会怎么做。

谢谢。

1 个答案:

答案 0 :(得分:1)

可以通过将表名放在一个小清单中来完成

$query = $this->db
    ->select('*')
    ->from(['table1', 'table2'])
    ->get();
return $query->result();

但是结果中的行数将是每个表中行数的乘积,即table1有3行,而table2有19行,您将得到57行。您确定那是您想要的吗?

联接易于编写且效率很高。不要害怕他们。