我想在1个表中显示user表和users_profiles表: 我想将它们都链接起来,以便usrpID = usrID,
在此过程之前,我尝试使用此代码仅显示用户表,并且效果很好。
控制器:
$data['query'] = $this->db->query('SELECT * FROM users_profiles');
$this->load->view('users/users_view',$data);
查看:
<?php foreach($query->result_array() as $row): ?>
<tr class="even gradeC">
<td><?php echo $row['usrID']</td>
<td><?php echo $row['usrName'];?></td>
</tr>
<? endforeach; ?>
但是当我尝试连接两个表时,它会返回一个错误:这是我的代码
$this->db->select('users.usrID, users_profiles.usrpID');
$this->db->from('users', 'users_profiles');
$this->db->join('users', 'users.usrID = users_profiles.usrpID');
$result = $this->db->get();
users表包含用户名,密码等字段,每个用户在users_profiles表中都有自己的个人资料
users users_profiles
编辑我尝试选择字段,但是当我尝试使用
时<td><?php echo $row['usrID'];?></td>
<td><?php echo $row['usrName'];?></td>
<td><?php echo $row['usrpFirstName'].' '.$row['usrpLastName'];?></td>
<td><?php echo $row['usrpBday'];?></td>
<td><?php echo $row['usrpSex'];?></td>
<td><?php echo $row['usrpAddress'];?></td>
它返回用户配置文件中第一个不应该
的值答案 0 :(得分:25)
users
表同时包含from
和join
个函数,总而言之,您加入了3个表:users
,users
和{{1} } - &gt; 2首先具有相同的名称 - &gt; 错误唯一/别名表。
试试这个(加入users_profiles
中[{1}}] users
中的{from
}:
users_profiles
示例:
获取join
$this->db->select('users.usrID, users_profiles.usrpID')
->from('users')
->join('users_profiles', 'users.usrID = users_profiles.usrpID');
$result = $this->db->get();
列:
users_profiles
视图:
userpNick
答案 1 :(得分:2)
您可以在员工和地址表中参考此结果示例。
function getEmployees(){
$this->db->select("trn_employee.EMPLOYEE_ID,trn_employee.FIRST_NAME,trn_employee.LAST_NAME,trn_employee.EMAIL,trn_address.ADDRESS_LINE,trn_address.CITY");
$this->db->from('trn_employee');
$this->db->join('trn_address', 'trn_address.employee_id = trn_employee.employee_id');
$query = $this->db->get();
return $query->result();
}