我想加入student_image
表和student_details
表格
image_id = student_id
但我卡在这里,查询给出了学生的详细信息,但现在我想添加学生形象与学生一起显示
以下是我的查询
$query = $this->db->get_where('student_detail',array('reg_no'=>$reg_no))->result_array();
答案 0 :(得分:0)
我自己,也许其他人完全不知道你正在使用的db类是什么,所以我们无法帮助你解决这个问题。
这样的查询非常基础。简单查询看起来有点像这样:
SELECT *
FROM student_details, student_image
WHERE student_details.studentID = student_image.studentID
就是这样。现在你必须将它转换为使用你的db类...
我建议您在开始使用特殊的预制类之前学习基本的mysql查询。当你不知道自己想做什么时,它们会使事情变得复杂得多。
- 只有在两个表中实际存在该行时,上述查询才能获取学生详细信息。
如果你想要它回来,即使它不存在,你可以使用LEFT JOIN
,如下所示:
SELECT *
FROM student_details
LEFT JOIN student_image ON student_details.ID = student_image.ID
WHERE student_details.ID = 'myStudentID'
上述查询将检索学生的结果。
答案 1 :(得分:0)
您使用的是CodeIgniter吗?
如果您想显示student_image
,也可以这样做:
$this->db->select('*');
$this->db->from('student_image a');
$this->db->join('student_details b', 'a.image_id=b.student_detail_id','inner');
$this->db->where('b.student_detail',$reg_no);
return $this->db->get();
或者你可以这样做:
$query = "select * from student_image as a join student_details as b on a.image_id=b.student_detail_id where b.student_detail=?"
return $this->db->query($query ,array($reg_no));
我希望这能解决你的问题