2017-08-16 26 views
-3

如何在查詢生成器codeigniter的幫助下更改以下查詢?如何更改查詢?

$query=$this->db->query("select a.*,b.nama from transaksi a, 
            anggota b 
            where a.no_transaksi='$nomor' and a.no_transaksi 
            not in(select no_transaksi from pengembalian) 
            and a.nomor_anggota=b.nomor_anggota"); 

注:只是想知道另一種方式

+0

你應該看看'sql join'。 [加入](https://www.w3schools.com/sql/sql_join.asp) – Badiparmagi

+0

看看這個https://www.codeigniter.com/userguide3/database/query_builder.html –

+0

這是一個糟糕的查詢! –

回答

0

試試這個:

$this->db->select('a.*, b.nama'); 
$this->db->from('transaksi a, anggota b'); 
$this->db->where('a.no_transaksi', $nomor); 
$this->db->where('`a.no_transaksi` NOT IN (SELECT `no_transaksi` FROM `pengembalian`)', NULL, FALSE); 
$this->db->where('a.nomor_anggota = b.nomor_anggota'); 
$result = $this->db->get()->result(); 

,NULL,FALSEwhere()告訴笨不要逃避查詢,這可能搞砸了。

來源:subquery in codeigniter active record