语法错误,意外'FIND_IN_SET'(T_STRING)

时间:2014-01-02 12:40:44

标签: php mysql codeigniter

我在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;
    }
}

请帮我解决这个问题,谢谢。

2 个答案:

答案 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)");

你忘了打开括号。