2016-05-23 22 views
0

アクティブレコードを使用してこのクエリを書く方法CodeIgniter。このmySQLクエリをCodeIgniterのアクティブレコードに書き込む方法は?

私はCodeIgniterバージョン2を使用しています。 ライブラリサブクエリを使用して記述できますか?

例:

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

これは私のクエリです。

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 

私を助けてくれてありがとう。

答えて

0

あなたは、マニュアルのクエリ&使用$this->db->query($sql)関数を書くことができます$ this-> DB->クエリ(「クエリ」)

0

で全体のクエリを記述することができます。

$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(); 
+0

とどのように私はそれに変数を渡すことができますが、照会、例 –

+0

は簡単のために、あなたの変数は、$ strのであり、あなたのクエリが$ SQL =「テーブルからcolmnは= {$ strの} *選択」です。 – dev87

関連する問題