我想为4个表执行mysql连接,这是它们的样子
student_details ,将包含具有唯一值
行的学生详细信息------------------------------------------
| student_unique | name | age | etc...
------------------------------------------
| 1232432 | ABC | 23 | xxx
| 1223233 | CDE | 26 | yyy
------------------------------------------
student_subjects 学生注册的科目列表
-------------------------------
| student_unique | subject_id |
-------------------------------
| 1232432 | 25 |
| 1232432 | 26 |
-------------------------------
subject_details 主题详情
-------------------------------
| subject_id | subject_name |
-------------------------------
| 25 | chemistry |
| 12 | english |
-------------------------------
Student_contact_details 学生联系方式列表
-------------------------------------
| student_unique | key | value |
-------------------------------------
| 1232432 | email | a@b.com
| 1232432 | phone | 555-44-333
-------------------------------------
现在我想运行查询以查找学生1232432
的所有详细信息,结果应该是这样的
这就是我做的事情
$this->db->select(
'a.student_unique,
a.name,
b.student_unique,
b.subject_id,
c.subject_id,
c.subject_name,
d.student_unique,
d.key,
d.value,'
);
$this->db->from('student_details a');
$this->db->join('student_subjects b', 'b.student_unique = a.student_unique', 'left');
$this->db->join('subject_details c', 'c.subject_id = b.subject_id', 'left');
$this->db->join('student_contact_details d','d.student_unique = b.student_unique', 'right');
$this->db->where('a.student_unique',$student_unique);
$query = $this->db->get();