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();