[英]Inner join in codeigniter
這是錯誤...
發生數據庫錯誤
錯誤編號:23000/1052
字段列表中的列“ id”不明確
從tbl_vendor
聯接中選擇SELECT id
tbl_item
ON id
= vendor_id
WHERE shop
='BVC'
文件名:C:/xampp/htdocs/parts/system/database/DB_driver.php
行號:691
$shop= $this->input->post('vendor');
$this->db->select('id');
$this->db->from('tbl_vendor');
$this->db->join('tbl_item', 'vendor_id=id', 'inner');
$this->db->where('shop', $shop);
$query=$this->db->get();
只需將表名添加為模棱兩可,如下所示:
$shop= $this->input->post('vendor');
$this->db->select('tbl_vendor.id');
$this->db->from('tbl_vendor');
$this->db->join('tbl_item', 'tbl_item.id=tbl_vendor.id','inner');
$this->db->where('tbl_vendor.shop', $shop);
$query=$this->db->get();
$data=$query->result_array();
這樣該查詢將是SELECT tbl_vendor.id FROM tbl_vendor INNER JOIN tbl_item ON tbl_vendor.id=tbl_item.id WHERE tbl_vendor.shop = 'BVC
中SELECT tbl_vendor.id FROM tbl_vendor INNER JOIN tbl_item ON tbl_vendor.id=tbl_item.id WHERE tbl_vendor.shop = 'BVC
'
更多信息請點擊這里
您收到的錯誤表示您正在查詢的一個或多個表中存在字段名稱“ id”,請您寫下每個表中的哪些列? 給表命名並與字段一起使用將解決您的問題:例如tbl_vendor.id
因為您必須對列進行相同嘗試
$shop = $this->input->post('vendor');
$query = $this->db->select('i.id, v.id as vender_id')
->from('tbl_vendor v')
->join('tbl_item i', 'i.id = v.id')
->where('v.shop', $shop)
->get();
return $query->row_array();
注意:
https://www.codeigniter.com/user_guide/database/results.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.