Php Codeigniter MySQL连接复合体
我有几个表,希望一次显示一个id 表A id | isi a1 | isi a2 表B id | id | a | isi b1 | isi b2 表C id | id | a | isi c1 | isi c2 表D id | id | a | isi d1 | isi d2 表E id | id | a | isi e1 | isi e2 我想展示ISIB1-E2,其中每个表在表a中都有id_a=id。我不知道mysql连接,我已经尝试了这段代码Php Codeigniter MySQL连接复合体,php,mysql,codeigniter,join,Php,Mysql,Codeigniter,Join,我有几个表,希望一次显示一个id 表A id | isi a1 | isi a2 表B id | id | a | isi b1 | isi b2 表C id | id | a | isi c1 | isi c2 表D id | id | a | isi d1 | isi d2 表E id | id | a | isi e1 | isi e2 我想展示ISIB1-E2,其中每个表在表a中都有id_a=id。我不知道mysql连接,我已经尝试了这段代码 $this->db->selec
$this->db->select('BaseTbl.id, BaseTbl.tanggal, BaseTbl.atas_nama, BaseTbl.kerugian, BaseTbl.keterangan, BaseTbl.admin, BaseTbl.status');
$this->db->from('data_blacklist as BaseTbl');
$this->db->join('bl_rekening as Rekening, bl_telefon as Telefon, bl_bukti as Bukti, bl_pelapor as Pelapor', 'Rekening.id_blacklist = BaseTbl.id, Telefon.id_blacklist = BaseTbl.id, Bukti.id_blacklist = BaseTbl.id, Pelapor.id_blacklist = BaseTbl.id','left');
但它总是给我
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' bl_telefon as Telefon, bl_bukti as Bukti, bl_pelapor as Pelapor ON `Rekening`.`' at line 3
我现在不知道。有什么想法吗?我使用codeigniter,试试这个。您必须为每个表查询联接。你不能把它们结合起来
$this->db->select('BaseTbl.id, BaseTbl.tanggal, BaseTbl.atas_nama, BaseTbl.kerugian, BaseTbl.keterangan, BaseTbl.admin, BaseTbl.status');
$this->db->from('data_blacklist as BaseTbl',);
$this->db->join('bl_rekening as Rekening','Rekening.id_blacklist = BaseTbl.id','left');
$this->db->join('bl_telefon as Telefon','Telefon.id_blacklist = BaseTbl.id','left');
$this->db->join('bl_bukti as Bukti','Bukti.id_blacklist = BaseTbl.id','left');
$this->db->join('bl_pelapor as Pelapor','Pelapor.id_blacklist = BaseTbl.id','left');
我可以帮助您在CodeIgniter中进行手动查询
return $this->db->query("select A.*, B.*, C.*, D.*, E.* from Table A, Table B, Table C, Table D, Table E WHERE A.id = B.id_a AND A.id = C.id_a AND A.id = D.id_a AND A.id = E.id_a")->result_array();
A、 B、C、D和E是表的别名。如果存在值,它将为您带来数据。也可以编写手动查询
$this->db->select('a.*,b.*,c.*,d.*,e.*');
$this->db->from( TABLES::$A . ' AS a' );
$this->db->join(TABLES::$B . ' AS b', 'a.id = b.id_a');
$this->db->join(TABLES::$C . ' AS c', 'a.id = c.id_a');
$this->db->join(TABLES::$D . ' AS d', 'a.id = d.id_a');
$this->db->join(TABLES::$E . ' AS e', 'a.id = e.id_a');
$query=$this->db->get();
// echo $this->db->last_query();
$result = $query->result_array();
return $result;