SQL中表的连接类型-左连接、右连接、内连接
两个表
student表,information表
左连接
student表 left join information表
SELECT * FROM student s LEFT JOIN information f on s.SNO = f.SNO;
- SNO='202201',s有2条,f有1条,结果集有2条数据;
- SNO='202202',s有3条,f有2条,结果集有6条数据;(2×3=6)
- SNO='202203',s有1条,f有1条,结果集有1条数据;
- SNO='202204',s有1条,f有2条,结果集有2条数据;
- SNO='202205',s有1条,f无,结果集f的列为null;
- SNO='202206',s无,f有的数据,结果集无;
注意黑色加粗的字即它们的区别;
右连接
student表 right join information表
SELECT * FROM student s RIGHT JOIN information f on s.SNO = f.SNO;
- SNO='202201',s有2条,f有1条,结果集有2条数据;
- SNO='202202',s有3条,f有2条,结果集有6条数据;(2×3=6)
- SNO='202203',s有1条,f有1条,结果集有1条数据;
- SNO='202204',s有1条,f有2条,结果集有2条数据;
- SNO='202205',s有1条,f无,结果集无;
- SNO='202206',s无,f有的数据,结果集s的列为null;
内连接
student表 inner join information表
SELECT * FROM student s inner JOIN information f on s.SNO = f.SNO;
- SNO='202201',s有2条,f有1条,结果集有2条数据;
- SNO='202202',s有3条,f有2条,结果集有6条数据;(2×3=6)
- SNO='202203',s有1条,f有1条,结果集有1条数据;
- SNO='202204',s有1条,f有2条,结果集有2条数据;
- SNO='202205',s有1条,f无,结果集无;
- SNO='202206',s无,f有1条,结果集无;
SELECT * FROM student s,information f WHERE s.SNO = f.SNO
where语句也可以实现内连接的功能,但是where语句还可以加上其他条件,内连接只能自己再写一个where条件语句。
End.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
2019-04-12 jmeter用Windows电脑分布式部署