前言
数据库最多的操作应该就是查询了,尤其是有关联的多表之间的查询了。下面会介绍几种多表查询的操作的语句和实例演示,一方面是作为自己的总结,一方面希望可以帮助到需要使用的同学。
对于下面的代码示例都是基于学生表,课程表,成绩表三张表。
- 学号是学生表中的主键
- 课程号是课程表中的主键
- 成绩表中的学号和课程号分别为外键,和学生表,课程表建立联系
- -
简单多表查询
首先要指定查询中都用到了那些表,然后在where条件中,将查询的条件以及各表之间的关系都给出来
格式:
select [要查询的项1][项2] from [表1][表2] where 查询的条件,以及将多表之间联系起来
如下,cname来自于course表,grade来自于sc表,要查询的所有信息基于刘晨这个人,所以要涉及student表。
查找刘晨所选的课程名以及成绩
select cname ,grade from student,course,sc
where sname='刘晨' and sc.cno=course.cno and sc.sno=student.sno;
where条件中,姓名为刘晨,sc.cno=course.cno,意思为将course表中的cno对应到sc表中的cno,sno.sno=sc.sno类似。