我无法生成用于连接表的SQL语句。
基本上我有4张桌子。并且有2个表用外键。表序列连接到Product表和Region Table。并且分配表连接到序列表。
表产品。
id | product_desc
表区域。
id | region_desc
表序列。
id | product_id |的region_id
表格分布
id | sequence_id |销售| distribution_fee
我的型号代码:
$this->db->select('*');
$this->db->from('distributions');
$this->db->join('sequence', 'sequence.id = distributions.sequence_id', 'left');
$this->db->join('sequence', 'sequence.product_id=products.product_no'); //Generates Error
$this->db->join('sequence', 'sequence.region_id=regions.id'); // Generates Error
$this->db->order_by('distributions.id','asc');
$query = $this->db->get();
if($query->num_rows() != 0){
return $query->result_array();
} else {
return false;
}
任何解决方案?非常感谢。
提前致谢。
答案 0 :(得分:0)
您没有引用regions
和products
表
尝试这样的事情:
$this->db->select('*');
$this->db->from('distributions');
$this->db->join('sequence', 'sequence.id = distributions.sequence_id', 'left');
$this->db->join('products', 'sequence.product_id=products.product_no');
$this->db->join('regions', 'sequence.region_id=regions.id');
$this->db->order_by('distributions.id','asc');
$query = $this->db->get();
if($query->num_rows() != 0){
return $query->result_array();
} else {
return false;
}