如何在CodeIgniter活动记录中编写此mySQL查询?

How to write this query using active record CodeIgniter.

I'm using CodeIgniter version 2. Is it possible to write it using libraries subquery ?

Example :

$this->db->select('......');
$this->db->from('......');

This is my query.

SELECT `a`.`NAMA_BULAN` AS 'Bulan',
 CASE WHEN `b`.`TOTAL_STLH_DISC` IS NULL
 THEN '0'
 ELSE `b`.`TOTAL_STLH_DISC`
 END AS 'Total Pendapatan'
FROM `tbl_bulan` AS `a`
LEFT JOIN (
           SELECT MONTH(`tbl_transaksi_jual`.`TGL_TRANSAKSI`) AS `TGL_TRANSAKSI`,
           SUM(`tbl_transaksi_jual`.`TOTAL_STLH_DISC`) AS `TOTAL_STLH_DISC`
           FROM `tbl_transaksi_jual`
           WHERE `tbl_transaksi_jual`.`ID_CABANG`=2
           GROUP BY MONTH(`tbl_transaksi_jual`.`TGL_TRANSAKSI`)
          ) AS `b` ON `a`.ID_BULAN = `b`.`TGL_TRANSAKSI`
ORDER BY `a`.ID_BULAN ASC

Thanks for helping me.

you can write the whole query in $this->db->query('your query')

You can write the manual query & use $this->db->query($sql) function.

    $sql = "SELECT `a`.`NAMA_BULAN` AS 'Bulan',
                 CASE WHEN `b`.`TOTAL_STLH_DISC` IS NULL
                 THEN '0'
                 ELSE `b`.`TOTAL_STLH_DISC`
                 END AS 'Total Pendapatan'
                FROM `tbl_bulan` AS `a`
                LEFT JOIN (
                           SELECT MONTH(`tbl_transaksi_jual`.`TGL_TRANSAKSI`) AS `TGL_TRANSAKSI`,
                           SUM(`tbl_transaksi_jual`.`TOTAL_STLH_DISC`) AS `TOTAL_STLH_DISC`
                           FROM `tbl_transaksi_jual`
                           WHERE `tbl_transaksi_jual`.`ID_CABANG`=2
                           GROUP BY MONTH(`tbl_transaksi_jual`.`TGL_TRANSAKSI`)
                          ) AS `b` ON `a`.ID_BULAN = `b`.`TGL_TRANSAKSI`
                ORDER BY `a`.ID_BULAN ASC";

    $query = $this->db->query($sql);
    $result = $query->result_array();