php – 从两个表中选择SQL会返回重复值 – Codeigniter

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – 从两个表中选择SQL会返回重复值 – Codeigniter脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我必须从两个表中检索一些所有数据.没有条件.但我的代码返回重复的数据值.
每个表包含4行

中心tbl:

php – 从两个表中选择SQL会返回重复值 – Codeigniter

培训课程:

php – 从两个表中选择SQL会返回重复值 – Codeigniter

输出

php – 从两个表中选择SQL会返回重复值 – Codeigniter

我的控制器代码

$this->load->;model("admindata"); 
    $data ['query'] = $this->admindata->getcentrelist(); 

    $this->load->helPEr('url');
    $this->load->view('admin/header');
    $this->load->view('admin/training',$data);
    $this->load->view('admin/footer');

我对模型的查询是:

public function getcentrelist()
{
    $this->load->database();
    $query=  $this->db->query('SELECT centre_name,course_name From tbl_training_courses,tbl_traning_centres'); 
    return $query->result();
}

查看:(training.PHP)

<?PHP foreach($query as $row): ?>
        <tr>
            <td><?PHP echo $row->centre_name; ?></td>             
        </tr>
       <?PHP enDForeach; ?>

解决方法

这是正常的,因为你做了隐式连接!为什么不简单地请求两个查询,每个表一个,然后将结果合并到一个数组中?

public function getcentrelist()
{
    $this->load->database();
    $query_courses=  $this->db->query('SELECT course_name as name from tbl_training_courses');  
    $query_centers=  $this->db->query('SELECT centre_name as name from tbl_traning_centres'); 
    $courses = $query_courses->result();
    $centers = $query_centers->result();
    return array_merge($courses,$centers);
}

请注意,我已将字段course_name和中心名称重命名统一名称:“name”,这是一个连贯的合并表所必需的.

脚本宝典总结

以上是脚本宝典为你收集整理的php – 从两个表中选择SQL会返回重复值 – Codeigniter全部内容,希望文章能够帮你解决php – 从两个表中选择SQL会返回重复值 – Codeigniter所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。