select * from student,grade
where student.sno=grade.sno;
结果:
外连接(Outer Join)
左连接:左边表的所有数据都有显示出来,右边的表数据只显示共同有的那部分(就比如说成绩表和课程表连接,只显示两边有学号相等的,如果某一边的学号另一边没出现,那就不显示),没有对应的部分补NULL。
示例:
select * from student left outer join grade on student.sno=grade.sno;
结果:
右连接:和左连接相反。
示例:
select * from student left outer join grade on student.sno=grade.sno;
结果:
全外连接(Full Outer Join):查询出左表和右表所有数据,但是去除两表的重复数据。
示例:
原本SQL语句只应该需要类似:
select * from student full outer join grade on student.sno=grade.sno;
但因为MySQL不支持这样的全外连接,所以我们使用UNION来达到全外连接的效果:
select * from student left join grade on student.sno=grade.sno union select * from student right join grade on student.sno=grade.sno;
结果:
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。