我有两个表,一个用于用户,一个用于产品。
用户
id名称 1约翰 2法案
产品 id userId产品 1 1测试 2 2测试
我在模型中创建了一个搜索功能,因此我可以调用usermodel-> search($ productId)。在此函数中,Products表通过用户表连接查询,如下所示:
return $this->db->join(UserModel::TABLE_NAME, ProductModel::TABLE_NAME . '.userId = ' . UserModel::TABLE_NAME . '.id')->get($this->_tableName);
我遇到的问题是产品ID正在被userId取代。有人能指出正确的方向,为什么会发生这种情况?我是一个加入sql的菜鸟,以为我理解它们,但这让我感到莫名其妙。
答案 0 :(得分:3)
请你试试这个:
$this->db->select('Users.id as user_id,Products.id as product_id'); // you can write other fields using comma
$this->db->from("Users");
$this->db->join("Products",'Products.userId = Users.id','LEFT');
$query = $this->db->get();
echo $this->db->last_query();
return $query->result_array();
请您使用此代码发布查询。