学生表:student
教室表:class
一:左链接(左表全部查询,右表再满足条件的情况下显示,不满足条件的对应值为空)
查询每个学生属于那些班级的
SELECT student.*,class.class_name as className from student LEFT JOIN class ON student.class_id=class.id
如果student表中有个“刘继元是5班的”,那么这个时候就在class表就没有满足条件的记录,则对应出为空。查询结果如下:
student有-class有:正常展示
student有-class无:student全部展示,class没有的对应处为空
student无-class有:student全部展示,class有而student没有的不展示
2、右链接(参考左链接)
SELECT class.*,student.name,student.age from class RIGHT JOIN student ON student.class_id=class.id
3、内连接
只显示满足条件的:
SELECT student.*,class.class_name from student INNER JOIN class ON student.class_id=class.id
笛卡尔积:
SELECT student.*,class.class_name from student INNER JOIN class