我有这个跟随系统,可以让你遵循某种类型的状态。当您关注某人时,它会将您的用户ID与朋友的ID一起放入朋友表中。最后,它会添加您想要遵循的状态类型。所以说用户想要仅仅关注我的状态而不是照片,状态的类型将= 1。状态表也有类型,所以这个查询工作正常,但是如果类型等于零,我希望它选择所有状态类型,那么我该怎么做呢?
$this->db->select('statuses.type,statuses.text,statuses.media_url,statuses.user_id,statuses.id,users.name,users.username,users.avatar');
$this->db->from('statuses');
$this->db->join('friends', 'friends.type = statuses.type AND friends.friend_id = statuses.user_id OR friends.user_id = statuses.user_id');
$this->db->join('users', 'users.id = statuses.user_id');
$this->db->where('friends.user_id', $user_id);
$this->db->where('friends.confirmed', 1);
friends.type,当等于1时,会在状态表中选择状态types = to 1。如果类型= 2或3用于其他类型的状态(如照片或视频),这将起作用。就像我说的,如果friends.type = 0,我只需要一种方法来选择所有状态类型。
答案 0 :(得分:0)
也许这个?:
$this->db->join('friends', '(friends.type = 0 OR friends.type = statuses.type) AND (friends.friend_id = statuses.user_id OR friends.user_id = statuses.user_id)');