我有这个查询,它选择某个用户所关注的人的所有状态。我唯一的问题是,我无法使用此查询显示用户自己的状态:
$this->db->select('*');
$this->db->from('statuses');
$this->db->join('friends', 'friends.friend_id = statuses.status_user_id');
$this->db->where('friends.user_id', $user_id);
//$this->db->or_where('statuses.status_user_id', $user_id); // why doesn’t this work?
$this->db->where('friends.confirmed', 1);
$this->db->order_by("statuses.id", "desc");
$query = $this->db->get();
return $query->result_array();
db结构很简单,你需要知道的是,friends表有一个user_id(发出好友请求的人)和friend_id(正在被关注/被结识的人)什么是最简单的抓取方式用户的状态呢?
此查询仅输出被关注的人。我也找不到表明这个人状态的方法。因此也需要使用user_id。我希望这是有道理的。
已修复!非常简单,只需将此添加到我的加入中:
$this->db->join('friends', 'friends.friend_id = statuses.status_user_id OR friends.user_id = statuses.status_user_id');