我在Codeigniter中的where条件中使用FIND_IN_SET,我面临以下错误:
syntax error, unexpected 'FIND_IN_SET' (T_STRING)
如何解决?
我的模型如下:
function getTask($id, $is_master_admin)
{
$this->db->select('task.*, workspace.title as workspacetitle, GROUP_CONCAT(user.title ) AS usertitle,task.assigneduserid,user,id',FALSE);
$this->db->join(WORKSPACE , WORKSPACE . '.id = ' . TASK . '.workspaceid', 'inner');
$this->db->join(USER,USER . '.id = ' . TASK . '.assigneduserid', 'inner');
$this->db->from(TASK);
$this->db->group_by("task.id");
if (!$is_master_admin) {
$this->db->where FIND_IN_SET($id,"task.assigneduserid");
}
$this->db->where(TASK . '.tasktypeid', '1');
if ($query->num_rows() > 0) {
return $query->result();
} else {
return false;
}
}
请帮我解决这个问题,谢谢。
答案 0 :(得分:1)
你必须使用如下的find_in_set
$this->db->where("FIND_IN_SET('$id',task.assigneduserid) !=", 0);
答案 1 :(得分:1)
$this->db->where FIND_IN_SET($id,"task.assigneduserid");
到
$this->db->where("FIND_IN_SET($id, task.assigneduserid)");
你忘了打开括号。