1、使用谓词distinct过滤结果集中的重复记录
SELECT DISTINCT 列名称 FROM 表名称
2、使用谓词limit查询某几行记录select 字段列表 from 数据源 limit [start,] length;
3、数据库表的连接,使用from子句指定数据源
from 表名1 [ 连接类型 ] join 表名2 on 表1和表2之间的连接条件
连接类型分为:inner连接(内连接)和outer连接(外连接)
内连接分为三种:自然连接、等值连接、非等值连接。
外连接又分为left(左外连接,简称为左连接)、right(右外连接,简称为右连接)以及full(完全外连接,简称完全连接)。
内连接
·自然连接
select * from course natural join grade;
·等值连接 :使用等于=比较连接列的列值,在查询结果中列出接连表中的所有列,包括其中的重复列:
select * from R join S where R.C = S.C;
或者
select * from R inner join S where R.C = S.C;
·非等值连接 :在连接条件中,可以使用其他比较运算符,比较被连接列的列值,如:<、>、!=等。
·左连接(left join)on和后面的条件不能省略
select * from 表1 left join 表2 on 表1和表2之间的连接条件
查询结果集中须包含表1的全部记录,然后表1按指定的连接条件与表2进行连接,若表2中没有满足连接条件的记录,则结果集中表2相应的字段填入NULL。
·右连接的语法格式 right join / right outer join
select * from R right join S on R.C = S.C;
查询结果集中须包含表2的全部记录,然后表2按指定的连接条件与表1进行连接,若表1中没有满足连接条件的记录,则结果集中表1相应的字段填入NULL。
·全连接
select * from course full join grade;
·多表连接
select * from R join S on R.C = S.C join T on S.C=T.C;