关于mysql的关联查询,没有什么思路,逻辑能力强的进来看看呗

举例:有两个表 1.school 2.student (school的主键"id" 是student的外键"s_id")

我想两表关联查询,获得所有school的数据,还有school对应的student的数据

于是有语句

 select 
* 
form
school sc ,student st
where sc.id = student.s_id

然后问题就来了,当school表中没有对应的student的时候,school的数据也获取不到

而我希望的结果是:无论school有没有对应的student,先把school的数据全部获取,如果有对应的student,同时获取student的数据

请问一下大家有没有什么好的思路?

你这可以使用外连接查询
select * from school s1 left join student s2 on s1.id=s2_id

你这个可以用两个sql查询得到数据,然后再内存中自己处理。

select * from school sc,student st
where sc.id=st.s_id or sc.id not in(select from stu.s_id student stu)