php – codeigniter活动记录左连接

前端之家收集整理的这篇文章主要介绍了php – codeigniter活动记录左连接前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有3个 mysql表.
  1. Table 1 user
  2. id | name
  3.  
  4. Table 2 emails
  5. id | email
  6.  
  7. Table 3 user_email
  8. user_id | email_id

我没有查询多表的经验.
使用codeigniter活动记录,我想根据用户ID查找用户电子邮件地址,如果以下代码正确,请告知?

  1. $CI->db->select('email');
  2. $CI->db->from('emails');
  3. $CI->db->where('id',$userid);
  4. $CI->db->join('user_email','user_email.user_id = emails.id','left');
  5. $query = $CI->db->get();
您需要将where子句与您的表中的user_id进行比较,您将电子邮件的ID与提供的$user_id进行比较
  1. $CI->db->select('email');
  2. $CI->db->from('emails');
  3. $CI->db->where('user_id','left');
  4. $query = $CI->db->get();

一个更有用的方法是给别人提供别名,所以具有相同列的表不会有任何混淆

  1. $CI->db->select('e.email');
  2. $CI->db->from('emails e');
  3. $CI->db->join('user_email ue','ue.user_id = e.id','left');
  4. $CI->db->where('ue.user_id',$userid);
  5. $query = $CI->db->get();

猜你在找的PHP相关文章