我试图找出为什么我的JOIN没有处理数据库查询,我有两个带有user_ID列的表,但是当我返回它时它会返回所有内容,而不仅仅是每个用户选择的内容。我搞砸了什么想法?谢谢!
function user_apps()
{
$this->db->select('*');
$this->db->from('apps');
$this->db->join('members', 'members.user_ID = apps.user_ID');
$query = $this->db->get();
return $query;
}
这是DB表的图像,目标是基本上从每个用户的apps表中获取url, http://cl.ly/516bd1e8aae62bd11773
答案 0 :(得分:1)
您未在查询中指定WHERE子句。目前它正在返回所有内容,因为您只有两个用户,并且他们都在“apps”表中有条目。 如果你添加:
$this->db->where('members.first_name', $first_name);
并将第一个名称作为参数传递给函数,然后它只返回该用户的结果。
function user_apps($first_name)
{
$this->db->select('*');
$this->db->from('apps');
$this->db->join('members', 'members.user_ID = apps.user_ID');
$this->db->where('members.first_name', $first_name);
$query = $this->db->get();
return $query;
}