douliao8760 2019-07-05 23:50
浏览 99
已采纳

连接表并保留主表中的所有行

How can you join tables while keeping all rows from the main table?
Specifically using CodeIgniter's database library.

For example, the below code only returns joined rows from table1 and table2 where the condition applies for both tables.
How do you return all rows from table1 and only join rows from table2 where the condition applies?

$this->db->join('table2', 'table2.col = table1.col');
$query = $this->db->get('table1');
  • 写回答

1条回答 默认 最新

  • dongyi9298 2019-07-06 14:24
    关注

    The LEFT JOIN clause includes all rows from the "left" table (table1 in this case).

    In CodeIgniter this is done by adding it as a third parameter in the join method:

    $this->db->join('table2', 'table2.col = table1.col', 'left');
    $query = $this->db->get('table1');
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?