codeigniter连接3个表并从第1个表中获取数据,其中第1个表与第2个表链接,第2个表与第3个表链接

时间:2017-09-06 03:24:19

标签: mysql codeigniter join activerecord codeigniter-3

user_table(user_id, user_name)

user_group_table(user_id,  group_id)

group_table(group_id, group_name)

我需要检索数据(user_id, user_name, group_name)

如何在CodeIgniter中加入这些表?

3 个答案:

答案 0 :(得分:1)

  $this->db->query('SELECT user_table.user_id, user_table.user_name,
                    group_table.group_name
                    FROM
                    user_table
                    join user_group_table on user_group_table.user_id=user_table.user_id
                    join group_table on group_table.group_id=user_group_table.group_id')
                    ->result_array();

返回并打印/使用数组但是你喜欢或者你可以使用Codeigniter Query Builder Class

答案 1 :(得分:1)

$where = array(); //if u want to use any condition
$this->db->select('user_table.user_id, user_table.user_name, group_table.group_name');
$this->db->join('user_group_table', 'user_group_table.user_id = user_table.user_id');
$this->db->join('group_table', 'group_table.group_id = user_group_table.group_id');
$result = $this->db->order_by('user_table.user_id', 'desc')->get_where('property', $where)->result_array();   
return $result

答案 2 :(得分:1)

$this->db->select('user_table.user_id,user_table.user_name,group_table.group_name');
$this->db->from('user_group_table');
$this->db->join('user_table', 'user_table.user_id = user_group_table.user_id');
$this->db->join('group_table', 'group_table.group_id = user_group_table.group_id');
$query = $this->db->get();
$res = $query->result();
return $res;