我有3个表,如下所示
学生
id student_name
1 S1
2 S2
3 S3
4 S4
老师
id teacher_name
1 T1
2 T2
3 T3
类
id student_id teacher_id
1 1 1
2 2 1
我希望结果数组是这样的
Array
(
[0] => stdClass Object
(
[student_id] => 1
[teacher_id] => 1
)
[1] => stdClass Object
(
[student_id] => 2
[teacher_id] => 1
)
[2] => stdClass Object
(
[student_id] => 3
[teacher_id] =>
)
[3] => stdClass Object
(
[student_id] => 4
[teacher_id] =>
)
)
我正在使用的查询是
$query = $this->db->select('*')
->from('class')
->join('student', 'student.id = class.student_id', 'left')
->join('teacher', 'teacher.id = class.teacher_id', 'left')
->get();
我进入数组的结果是
Array
(
[0] => stdClass Object
(
[student_id] => 1
[teacher_id] => 1
)
[1] => stdClass Object
(
[student_id] => 2
[teacher_id] => 1
)
)
任何人都可以告诉我需要做些什么改变才能得到理想的结果
你应该在课堂表上加入学生和老师表。但我没有测试这个。
$query = $this->db->select('student.id, teacher.id')
->from('student')
->join('class', 'class.student_id = student.id', 'left')
->join('teacher', 'teacher.id = class.teacher_id', 'left')
->get();