7.内连接、外连接查询

本文详细介绍了SQL中的连接查询,包括内连接(自然连接)、左连接、右连接及全连接的概念和使用方法,并提供了具体的SQL语句示例。

7.内连接、外连接查询表数据

 

User

 

 

school

 

7.1.内连接(自然连接):只有两个表相匹配的行才能在结果集中出现

Select * from user u,school s where u.stu_id=s.stu_id;

 

 

7.2左连接:以左表为基准,遍历右表,右表有匹配的记录则与左表进行拼接,没有匹配的记录,则左表相应的记录后拼接的是null(即:不仅包含相匹配的行,还包含左表中所有的行)

Select * from user u left join school s on u.stu_id = s.stu_id;

 

 

7.3右连接:以右表为基准,遍历左表,左表有匹配的记录则与右表进行拼接,没有匹配的记录,则右表相应的记录后拼接的是null(即:不仅包含相匹配的行,还包含右表中所有的行)

Select * from user u right join school s on u.stu_id = s.stu_id;

 

7.4全连接:先以左表进行左连接,再以右表进行右连接

Select * from user u full outer join school s on u.stu_id = s.stu_id;(这个针对支持full join的数据库)

因为用的mysql版本不支持full join 所以可以用下面语句替代

Select * from user u left  join school s on u.stu_id = s.stu_id

union

Select * from user u right  join school s on u.stu_id = s.stu_id

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值