我正在尝试从数据库中获取特定作者的帖子数据 我必须按照post_author获取数据 post_author字段包含类似 -
的数据 2,4,5,9
2,4,5
4
4
4
10,2,4
如果帖子有多个作者,那么值以逗号分隔的格式存储 我想将post_author(存储在会话admin_id中)与字段post_author进行比较 如果假设我有一个post_author 4,它在所有记录中都可用,那么select query应返回所有记录 我在模型中选择查询 -
$this->db->select('p.ID,p.post_date,p.post_title,p.post_url,u.user_login');
$this->db->from('sa_posts p,sa_users u');
$this->db->where('u.ID=p.post_author');
$this->db->where('p.post_author',$this->session->userdata('admin_id')); // Here is a problem to compare post_author.
$query=$this->db->get();
return $query->result();
请帮帮我 感谢。
答案 0 :(得分:2)
在CodeIgniter中尝试以下操作:
替换:
$this->db->where('p.post_author',$this->session->userdata('admin_id'));
有:
$this->db->where(FIND_IN_SET("{$this->session->userdata('admin_id')}", 'p.post_author') != 0);
答案 1 :(得分:0)
进行一些更改后,我使用FIND_IN_SET() -
获得了我想要的输出$where = "FIND_IN_SET('".$this->session->userdata('admin_id')."', p.post_author)";
$this->db->select('p.ID,p.post_date,p.post_title,p.post_url,u.user_login');
$this->db->from('sa_posts p,sa_users u');
$this->db->where('u.ID=p.post_author');
$this->db->where( $where );
$query=$this->db->get();
return $query->result();