Choosing SQL from two tables returns duplicate values ​​- Codeigniter

I need to get some data from two tables. There are no conditions. But my code returns duplicate data values. each table contains 4 rows

Tbl centers:

centers_tbl

TBL Training Course:

tbl_training_course

Output:

View screenshot

My controller code:

    $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');

My request in the model:

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();
}

View: (training.php)

<?php foreach($query as $row): ?>
        <tr>
            <td><?php echo $row->centre_name; ?></td>             
        </tr>
       <?php endforeach; ?>
+4
source share
3 answers

This is normal due to the implicit connection you made! Why don't you just query two queries, one per table, and then combine the results into one array?

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);
}

, _ : "", .

+2

DISTINCT

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

Group By

public function getcentrelist()
{
    $this->load->database();
    $query=  $this->db->query('SELECT centre_name,course_name from tbl_training_courses, tbl_traning_centres GROUP BY center_name'); 
    return $query->result();
}
+1

, , , , , , 10 , 10 , , . , .

0

Source: https://habr.com/ru/post/1616991/


All Articles