Php 带有活动记录的codeigniter中的嵌套查询

Php 带有活动记录的codeigniter中的嵌套查询,php,mysql,codeigniter,Php,Mysql,Codeigniter,此查询在原始php中运行良好。但同样的事情,我需要在codeigniter与活动记录如下模型不工作。在浏览器中显示语法错误 SELECT m.no, m.Module, m.Duration FROM `tbl_module`m WHERE round=(SELECT Round FROM `tbl_assigned` WHERE TraineeID='".$TID."') AND trade=(SELECT tbl_Trade.ID FROM `tbl_Trade`, `tbl_ass

此查询在原始php中运行良好。但同样的事情,我需要在codeigniter与活动记录如下模型不工作。在浏览器中显示语法错误

SELECT m.no, m.Module, m.Duration 
FROM `tbl_module`m
WHERE round=(SELECT Round FROM `tbl_assigned` WHERE TraineeID='".$TID."') 
AND   trade=(SELECT tbl_Trade.ID FROM `tbl_Trade`, `tbl_assigned`
            WHERE `tbl_Trade`.ID=`tbl_assigned`.Trade AND TraineeID='".$TID."');
型号:

public function get_Module($TID) {
    $this->db->select('*');
    $this->db->from('tbl_trade AS t');
    $this->db->join('tbl_assigned AS a', 't.id=a.trade', 'INNER');
    $this->db->where('TraineeID', $TID);
    $where_clause1 = $this->db->get_compiled_select();

    $this->db->select('*');
    $this->db->from('tbl_assigned AS a');
    $this->db->join('tbl_trade AS t', 't.id=a.trade', 'INNER');
    $this->db->where('TraineeID', $TID);
    $this->db->where("`trade`, ($where_clause1)", null, false);
    $where_clause2 = $this->db->get_compiled_select();

    $this->db->select('*');
    $this->db->from('tbl_module');
    $this->db->where("`round`, ($where_clause2)", null, false);
    $query = $this->db->get();
    $data = $query->result();

    return $data;
}

这是因为在->where()中使用逗号“,”而不是等号“=”。谢谢,亲爱的,它现在可以工作了。这是因为在->where()中使用逗号“,”而不是等号“=”。谢谢,亲爱的,它现在可以工作了。