2016-07-07 43 views
2

學生表 Student table如何使用笨

結果表顯示在查看多個表中的數據 Result table

我的問題:學生表連接的結果表,但同一個學生的名字顯示多個,所以我的問題我有同樣的學生顯示一次

型號:

public function select(){ 
$this->db->select('*'); 
$this->db->from('result'); 
$this->db->join('student', 'result.student_id=student.student_id'); 
return $this->db->get()->result_array(); 
} 

控制器:

public function index(){ 
    $data = array(
      'page_title' => 'Result', 
      'page_name' => 'result/result', 
      'result'=> $this->result_model->select() 
     ); 
$this->load->view('admin/template', $data); 
} 

查看

<?php foreach ($result as $key => $value): ?> 
       <tr> 
        <td><?php echo $value['first_name']; ?></td> 
<td><?php echo $value['mark']; ?></td> 
</tr> 
<?php endforeach;?> 
+2

您使用GROUP BY子句。 $這 - > DB-> GROUP_BY( 'student.student_id'); –

回答

2

可以使用Group By爲顯示你的記錄爲一次

添加該代碼在你的模型:

型號:

<?php 

Class Result_model extends CI_Model { 

    public function __construct() { 
     // Call the CI_Model constructor 
     parent::__construct(); 
    } 
    public function select(){ 
     $this->db->select('*'); 
     $this->db->from('result'); 
     $this->db->join('student', 'result.student_id=student.student_id'); 
     $this->db->group_by('student.student_id'); 
     return $this->db->get()->result_array(); 
    } 
} 
+0

@Nikunj Rathod我已創建的所有列sudent marksheet以上結果表加入多個表,但學生姓名,考試名稱,部分名稱,標準編號,主題名稱中的所有列複製, 我要在下面創建視圖:學生姓名,數學,物理,化學結果顯示kishan kakadiya,30,40,50 – kishankakadiya

0

試試這個型號代碼。

public function select(){ 
$this->db->select('*'); 
$this->db->join('student as st', 'st.student_id= re.student_id'); 
return $this->db->get('result as re')->result_array(); 
} 
+0

結果表在所有列中加入並顯示markshit,但重複記錄返回原因? – kishankakadiya

+0

Marksheet View below: – kishankakadiya

+0

學生姓名,科目1,科目2,... sunject n – kishankakadiya