如何从关系数据库Codeigniter获取数据



当我使用逗号分隔的db中,每个人都建议我将表标准化,所以我将桌子归一化,现在我的表看起来像

tuitor table
tuitor_id | name | mobile |etc
   1      | xyz  |14562547|anyinputs
   2      |abc   |47545875|text
   3      |abd   |47854874|yyy
now my normalized table is tuitor_keyword
tuitor_keyword_id | id_tuitor | id_keyword
   1              |   1       |123
   2              |   1       |124
   3              |   2       |123
   4              |   2       |155
   5              |   1       |187  

在检索任何tuitor时,我想要逗号中的关键字,例如for id_tuitor = 1,应该是123,124

this is the query what i am using
        $this->db->select('*')->from('tuitor');  
        $this->db->join('tuitor_keyword','tuitor.tuitor_id =  tuitor_keyword.id_tuitor','left');
  $query=$this->db->get();
        return $result = $query->result_array();

它正在为tuitor_keyword_id创建新数组

concat_group是您的解决方案:

$this->db->query('SELECT id_tuitor, CONCAT_GROUP(id_keyword) AS gr FROM tuitor_keyword GROUP BY id_tuitor');

或:

$this->db->select('id_tuitor, CONCAT_GROUP(id_keyword) AS gr', false)->from('tuitor_keyword')->group_by('id_tuitor');

最新更新