Mysql行查询到codeigniter查询

Mysql行查询到codeigniter查询,mysql,codeigniter,Mysql,Codeigniter,我有以下Mysql查询。根据需要运行 SELECT t_doc.*, t_user.IDA, t_data.IDA FROM ( SELECT DISTINCT IDau FROM t_doc ) IDau_list LEFT OUTER JOIN ( SELECT IDd ,IDau FROM t_doc WHERE

我有以下Mysql查询。根据需要运行

SELECT
    t_doc.*, t_user.IDA, t_data.IDA
FROM
    ( SELECT DISTINCT IDau FROM t_doc ) IDau_list

    LEFT OUTER JOIN
        (
            SELECT
                IDd ,IDau
            FROM
                t_doc
            WHERE
                doc_type = 'doc'
            GROUP BY IDau
        )
        doc_images ON doc_images.IDau = IDau_list.IDau

LEFT OUTER JOIN
        (
            SELECT
                IDd ,IDau
            FROM
                t_auto_doc
            WHERE
                doc_type = 'jpg'
            GROUP BY IDau
        )
        jpg_images ON jpg_images.IDau = IDau_list.IDau

    LEFT OUTER JOIN
        t_doc ON t_doc.IDdoc = COALESCE(jpg_images.IDd, doc_images.IDd)
    LEFT OUTER JOIN
        t_user ON t_user.IDau = t_doc.IDau
    LEFT OUTER JOIN
        t_data ON t_user.IDA = t_data.IDA
但是,我必须把这个查询带到codeigniter模型中,在这个模型中,我必须调整查询,就像这样的例子

 $this->db->select('u.IDau, a.*');
 $this->db->from('t_user u'); 
 $this->db->join('t_doc d', 'd.IDau=u.IDau', 'left');
 And ...More.....Here......
但是,我觉得很难。是不是有人能帮我换一下。。
提前谢谢,@NEVERMIND建议我使用

$query = $this->db->query("My QUERY WITH A BIT OF CHANGE");
是的,我应该做一些更改,以获得所需的准确数据


谢谢你的评论和想法

正如@NEVERMIND所说,我已经用

$query = $this->db->query("My QUERY WITH A BIT OF CHANGE");
是的,我应该做一些更改,以获得所需的准确数据


谢谢你的评论和想法

实际问题是什么?我不确定,但我认为查询生成器类无法处理如此复杂的查询。。。但您始终可以使用:我认为您正在寻找使用活动记录嵌套选择的方法。如果是这样@MR.Internet,为什么不能使用:$this->db->query('YOUR query HERE')?我同意@nevermind对于任何复杂的查询,我通常手动构建查询,并使用$this->db->query()和参数绑定。如果它变得非常复杂,我会在查询中留下一些占位符,就像它是一个视图模板一样,然后用正确的查询替换字符串,直到我得到我需要的。实际的问题是什么?我不确定,但我认为查询生成器类无法处理如此复杂的查询。。。但您始终可以使用:我认为您正在寻找使用活动记录嵌套选择的方法。如果是这样@MR.Internet,为什么不能使用:$this->db->query('YOUR query HERE')?我同意@nevermind对于任何复杂的查询,我通常手动构建查询,并使用$this->db->query()和参数绑定。如果它变得非常复杂,我会在查询中留下一些占位符,就像它几乎是一个视图模板一样,然后用正确的查询替换字符串,直到得到所需的内容。