我必须加入三个表。我不是一个好的 sql 编写器。可以请某人帮助我使用连接来准备这个吗,
分支机构
branch_id | branch_name | branch_address
1 name1 address1
分支服务
bs_id | branch_id | service_id
1 1 1
2 1 2
3 1 4
服务
service_id | service_name
1 service1
2 service2
3 service3
4 service4
我需要像这样从分支表和与每个分支相关的 service_names 中选择 *
结果
1 | name1 | address1 | service1 service2 service4 |
我在搜索时发现了一个名为 group_concat 的东西。它可以工作。但是如何与 CI 一起使用呢???
最佳答案
$this->db->select('*');
$this->db->from('branches');
$this->db->join('branch_services','branches.branch_id = branch_services.branch_id', 'left');
$this->db->join('services','branch_services.service_id = services.service_id', 'left');
$query = $this->db->get();
if($query->num_rows() != 0)
return $query->result_array();
else
return false;
根据需要使用左、右、内连接
关于php - 三张表使用 CI 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24926500/