douyi1855 2019-07-26 04:09
浏览 70
已采纳

在codeigniter中加入2个以上的数据库表错误: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();
        }
  • 写回答

3条回答 默认 最新

  • duanmaifu3428 2019-07-26 04:25
    关注

    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();
        }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?