博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
图解 5 种 Join 连接及实战案例!(inner/ left/ right/ full/ cro
阅读量:6517 次
发布时间:2019-06-24

本文共 634 字,大约阅读时间需要 2 分钟。

Join 连接在日常开发用得比较多,但大家都搞清楚了它们的使用区别吗??一文带你上车~~

内连接 inner join

内连接是基于连接谓词将俩张表(如A和B)的列组合到一起产生新的结果表,在表中存在至少一个匹配时,INNER JOIN 关键字返回行。 

image

下面是一个简单的使用案例 

image

以下是运行代码及结果 

image

左外连接 left join

左外连接Left join关键字会从左表那里返回所有的行,即使是在右表中没有匹配到的行 

image

下面是一个简单的案例 

image

下面是测试用例 

image

右外连接 right join

右外连接关键字Right join会从右表那里返回所有的行,即使是在左表中没有匹配到的行 

image

下面是一个简单的案例 

image

下面是运行及其结果 

image

全连接 full join

全连接的关键字Full join,只要其中某个表中存在匹配,Full join 就会返回行 

image

下面是一个简单的案例 

image

以下是运行及结果 

image

注意一点 mysql中是不支持Full join 的但是orcal等数据库是支持的。 

如果在mysql要使用Full join就会报以下错误 
image

解决办法:同时使用左连接和右连接 

以下是一个简单的例子image

交叉连接 cross join

交叉连接一般使用的比较少,交叉连接又称笛卡尔连接或者叉乘连接,如果,A和B是俩个集合,他们的交叉连接就是A*B 

以下是一个简单的案例 

image

扫描关注我们的微信公众号,干货每天更新。

image

转载于:https://blog.51cto.com/honly/2139564

你可能感兴趣的文章
images对象实现图片幻灯片
查看>>
Oracle 12c 日常维护
查看>>
CF 445A DZY Loves Chessboard
查看>>
Cobbler简介
查看>>
恢复 git reset -hard 的误操作
查看>>
菜鸟初始代码旅程——修改记录
查看>>
C# WinForm 文件上传下载
查看>>
【javascript】ajax请求 编码问题导致的ie浏览器在输入中文文字后没有内容,而chrome正常搜到文字...
查看>>
Git分支操作
查看>>
Spring Integration概述
查看>>
[SAP ABAP开发技术总结]权限对象检查
查看>>
RDIFramework.NET ━ 9.6 模块(菜单)管理 ━ Web部分
查看>>
Android安全问题 静音拍照与被拍
查看>>
cocos2d-x 3.1.1 学习笔记[13] listen 监听器
查看>>
定制私人博客
查看>>
WTL介绍
查看>>
应用程序框架实战三十四:数据传输对象(DTO)介绍及各类型实体比较(转)
查看>>
放量滞涨,抛出信号
查看>>
BeanFactory not initialized or already closed - call 'refresh' before accessing beans解决办法
查看>>
dSYM 文件分析工具
查看>>