Php 如何从codeigniter中的三个表中检索数据以获得完整视图
我是codeigniter和php的新手。我的DB中有两个表我需要做的是从表user\u details、user\u comments中检索数据 用户详细信息的id与用户评论中的id相同 我想在我的视图上显示一些输出,因为没有这样的条件,我需要所有用户列表,包括用户详细信息中的名字、姓氏和通信id中的用户评论数Php 如何从codeigniter中的三个表中检索数据以获得完整视图,php,mysql,codeigniter,Php,Mysql,Codeigniter,我是codeigniter和php的新手。我的DB中有两个表我需要做的是从表user\u details、user\u comments中检索数据 用户详细信息的id与用户评论中的id相同 我想在我的视图上显示一些输出,因为没有这样的条件,我需要所有用户列表,包括用户详细信息中的名字、姓氏和通信id中的用户评论数 public function user_details(){ $query=$this->db->select('id, f_name,
public function user_details(){
$query=$this->db->select('id, f_name, l_name')
->from('user_details');
$array=array();
foreach($query->result() as $row)
{
$id=$row->id;
$array['f_name']=$row->f_name;
$array['l_name']=$row->l_name;
$query1=$this->db->select('comments')
->from('user_comments')
->where('id_user',$id);
foreach($query1->result() as $row1){
$array['comments'] = COUNT($row->comments;
}
}
return $array;
}
我需要帮助请帮助我…您不想运行N+1查询。您可以通过查询一次性获得所有必要的数据
选择u.id、u.f\u名称、u.l\u名称、计数(c.id\u用户)注释数
从用户\详细信息u左加入用户\注释c
ON u.id=c.id\u用户
按u.id、u.f_名称、u.l_名称分组
样本输出:
| id | f_name | l_name | comments_count |
|----|--------|--------|----------------|
| 1 | John | Doe | 4 |
| 2 | Jane | Doe | 2 |
谢谢您的回复,先生..我收到了错误“字段列表中的'id'列不明确”很抱歉再次激怒您,但我使用的名称**php echo$user['l_name'];**评论计数工作正常。谢谢