我知道如何加入2个基本表格。我感兴趣的是如何通过为表格添加别名来加入 Codeigniter 中的派生表,就像我们在 mysql 中一样。
示例:的
Table1->where(something)->group_by(something) as derived_table1
Table2->where(something AND something)->group_by(something) as derived_table2
如何离开加入这两张表?
请注意: 我知道我可以先加入加入,然后应用where子句。但这会改变查询结果。我需要离开加入派生表。
答案 0 :(得分:2)
我不确定这是规范方法,但这是我如何做的示例:
// Build subquery
$this->db->select('max(a) a', false);
$this->db->group_by('b');
// Save subquery
$subQuery = $this->db->get_compiled_select('table-1');
// Main query
$this->db->select('t.a', false);
$this->db->from('table-2');
// Here insert subquery
$this->db->join("($subQuery) t", 'condition', 'left');
$query = $this->db->get();