2017-08-16 79 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