left join on多表关联_SQL 多表连接

多数SQL查询只包含从一个或多个表中返回数据的单条SELECT语句。但是,SQL也允许执行多个查询(多条SELECT语句),并将结果作为一个查询结果集返回。这些组合查询通常称为并(union)或复合查询(compound query)

主要有两种情况需要使用联结

• 在一个查询中从不同的表返回结构数据;

• 对一个表执行多个查询,按一个查询返回数据。

提示:组合查询和多个WHERE条件多数情况下,组合相同表的两个查询所完成的工作与具有多个WHERE子句条件的一个查询所完成的工作相同。换句话说,任何具有多个WHERE子句的SELECT语句都可以作为一个组合查询. SQL最强大的功能之一就是能在数据查询的执行中联结(join)表。联结是利用SQL的SELECT能执行的最重要的操作,很好地理解联结及其语法是学习SQL的极为重要的部分。”

SELECT 

表的联结(join): 各表之间建立起联系,并最终联系在一起
交叉联结(cross join) 内联结(inner join) 左联结(left join) 右联结(right join) 全联结(full join)
表和表之间通过列产生关系.涉及到多个表查询用联结。

0877268d3b2504672d10371a832bcb84.png
  1. 交叉联结(cross join):行数是两张表行数的笛卡尔积 类似于矩阵的运算规律

92109298bd1c2758e0e275288390c322.png

2. 内联结(inner join):查找出同时存在于两张表的数据;学生表和成绩表重合的地方是学号让两张表产生匹配,之后交叉联结;on表示两个表通过on后面的学号产生关系

3. 外联结(outter join)许多联结将一个表中的行与另一个表中的行相关联,但有时候需要包含没有关联行的那些行。与内联结关联两个表中的行不同的是,外联结还包括没有关联行的行。在使用OUTER JOIN语法时,必须使用RIGHT或LEFT关键字指定包括其所有行的表(RIGHT指出的是OUTER JOIN右边的表,而LEFT指出的是OUTER JOIN左边的表)。使用LEFT OUTER JOIN从FROM子句左边的表中选择所有行。为了从右边的表中选择所有行,需要使用RIGHT OUTER JOIN

df100f6123e06ae32939821abb4550ea.png

练习

查询所有学生的学号、姓名、选课数、总成绩

SELECT 

87a10ffeb6fc060566b9a5c6bff2ab3c.png

查询平均成绩>70的所有学生的学号,姓名,平均成绩

SELECT
	

2dedeb03ad5a1b839b20ef9b5ee3b229.png

查询学生的选课情况:学号,姓名,课程号,课程名称

SELECT
	

查询每门课程的及格人数和不及格人数

SELECT 

b985d38ff06b283c9a5d1d6567f9ac90.png
运行结果

使用分段来统计各科成绩,分别统计各分段人数,课程ID,课程名称

SELECT
	

SQLZOO

b52d7f58ad6eacd6b4359f9909db97dc.png

69b97d1d91c0ce27a6ce6adca52d3ec1.png

ef70efeb64db35f75bddaf5f9e59683f.png

6ce1c77f0367baa50b831b50265a1191.png

04ac624793c0012d38fe3bf179676c17.png

6e23e15eb10ab98b53a9d7db0473f23d.png

fe96bd17296480ce9ec478e88584bb61.png

89682502ac0a2b66fd267feb9ba40f7d.png

6e10c73c488d97571179942e41257a69.png

a5922c5282221787d8e41fc811a593e3.png

47e8219361eef5aec070edb8e78832da.png

5a423cd2c6f14a6a2dc52317ceeb689e.png

414e4c7eef0bbb05c67e99ea95ad3071.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值