【数据库】连接查询

1 内连接查询

【数据库】连接查询_第1张图片 【数据库】连接查询_第2张图片

 select 学员信息表.* 学员成绩表.* from 学员信息表 inner join 学员成绩表 on 学员信息表,学号 = 学员成绩表.学号;

【数据库】连接查询_第3张图片

 2 左连接查询

 【数据库】连接查询_第4张图片 【数据库】连接查询_第5张图片

 select 学员信息表.*,学员成绩表.* from 学员信息表 left join 学员成绩表 on 学员信息表,学号 = 学员成绩表,学号;

【数据库】连接查询_第6张图片

 3 右连接查询

  【数据库】连接查询_第7张图片 【数据库】连接查询_第8张图片

select 学员信息表.*,学员成绩表.* from 学员信息表 right join 学员成绩表 on 学员信息表,学号 = 学员成绩表.学号;

【数据库】连接查询_第9张图片

4 联合查询

union:用于合并两个或多个SELECT 语的结果集,并消去表中任何重复行
例:用union合并t1与t2表

select t1.* from t1
union
select t2.* from t2;


union all:用于合并两个或多个SELECT 语的结果集,保留重复行
例:用union all合并t1与t2表

select t1.* from t1
union all
select t2.* from t2;

5 全连接查询

全连接会返回两张表中全部的记录,本质上是对两个表中的记录取并集。
全连接没有主附表的区别,按照连接条件可以匹配到的记录会返回匹配后的结果匹配不到的记录用null进行填充。

 select * from t1 left join t2 on key1=key2
 union
 select * from t1 right join t2 on key1=key2 

你可能感兴趣的:(数据库)