1、基本连接
基本连接遵循的基本原则:
SELECT子句列表中,每个目标列前都要加上基表名称。
FROM子句应包括所有使用的基表。
WHERE子句应定义一个同等连接。
2、内连接
使用比较运算符对表之间的某些数据进行比较,并列出这些表中与连接条件相匹配的数据行。
SELECT 列名
FROM table1 INNER JOIN table2 [ ON join_conditions]
[WHERE 条件]
[ORDER BY 排序]
3、外连接
SELECT A.班级名,A.班级人数,B.姓名,B.联系方式
From 班级信息 A RIGHT OUTER JOIN 辅导员信息 B
ON A.辅导员=B.辅导员编号
内连接是一种等值连接,内连接消除两个表中任何不匹配的行,而外连接会返回from子句中提到的至少一个表或试图中的所有行,外连接有主从之分。
左外连接:LEET OUTER JION 一主二从 主表从表关系的问题
除满足连接条件的记录显示外,第一张表中不满足条件的记录也显示在查询结果集中。
右外链接:RIGHT OUTER JION 一从二主
除满足连接条件的记录显示外,第二张表中不满足条件的记录也显示在查询结果集中。
全连接:两个表中的所有的信息,然后在获取相匹配的行
除满足连接条件的记录显示外,两张表中的不能满足条件的记录也显示在查询结果集中。
4、交叉连接、
不带where子句,它返回被连接的两个表所有数据行的笛卡尔积,返回到结果集合中的数据行数等于第一个表中符合查询条件的数据行数乘以第二个表中符合查询条件的数据行数。
5、自连接
SELECT A.班级名,A.班级人数,B班级名
FROM 班级信息A , 班级信息B
WHERE A.班级人数=B.班级人数 ANDA.班级编号<>B.班级编号
6、使用子查询
包含在其他查询语句的WHERE语句当中
7、嵌套子查询
SELECT A.班级名,A.班级人数,B班级名
FROM 班级信息A , 班级信息B
WHERE A.班级人数=B.班级人数 ANDA.班级编号<>B.班级编号
8、交查询
INTERSECT关键字
9、差查询
EXCEPT关键字