SQL语言中的连接查询(一)
连接查询总共有7中查询(自己看书总结的以后方便复习)
一个查询中如果设计2个以上的表,成为连接查询。
(1)等值查询
一般的格式为 [<表名1>.]<列名1><比较运算符>[<表名2>.]<列名2>
比较运算符主要有 = ,> , < ,>= ,<= ,!=。连接谓语还可以使用如下形式
[<表名1>.]<列名1>between[<表名2>.]<列名2>and[<表名2>.]<列名3>
例题:查询每个学生及其选修课程的情况。
分析:学生的情况放在student表中,而学生的选修课程放在sc表中,同时涉及到student和sc两个表。这是一个等值连接。以下代码是在Access2003中编写的。
select student.*,sc.*
from student ,sc
where student.sno = sc.cno
(2)非等值连接 就是把上面额等值查询使用的非“=”运算符构成连接条件的称为非等值连接查询
(3)交叉连接
例题 假设每个学生选修了课程表中的所有课程,现在要查询每个学生的学号和选修课程的课程号。以下代码是在Access2003中编写的。
代码如下
select sno ,cno
from student ,course