Skip to content
Advertisement

Join more than 2 database table in codeigniter Error : 1066

so i kinda new with codeigniter and im trying to join 3 table from my database

  • database 1 : dkm (id, tgl, ref, etc)

  • database 2 : order_product (kode_barang, packing, nama_barang, etc)

  • database 3 : product (kodeprod, tglpakai, etc)

im already trying what other ppl do to join more than 2 table in codeigniter but i got this error :

Error Number: 1066

Not unique table/alias: ‘order_product’

SELECT * 
      FROM `order_product` 
      JOIN `order_product` ON `order_product`.`kode_barang` = `dkm`.`id` 
      JOIN `order_product` ON `order_product`.`kode_barang` = `produksi`.`kodeprod`

This is my code :

Bukaka_model.php

    public function getOrderProduct()
        {
            $this->db->select('*');
            $this->db->from('order_product');
            $this->db->join('order_product','order_product.kode_barang = dkm.id');
            $this->db->join('order_product','order_product.kode_barang = produksi.kodeprod');
            $query = $this->db->get();
            return $query->result();
        }

Advertisement

Answer

You’re trying to join to the same table multiple times, instead you need to join to the other tables once each.

You just need to change the names of the table you’re joining to:

public function getOrderProduct()
    {
        $this->db->select('*');
        $this->db->from('order_product');
        $this->db->join('dkm','order_product.kode_barang = dkm.id');
        $this->db->join('produksi','order_product.kode_barang = produksi.kodeprod');
        $query = $this->db->get();
        return $query->result();
    }
User contributions licensed under: CC BY-SA
1 People found this is helpful
Advertisement