|
|
|
|
移动端

图解5种Join连接及实战案例!(inner/ left/ right/ full/ cross)

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

作者:佚名来源:Java技术栈|2018-04-13 10:38

【新品产上线啦】51CTO播客,随时随地,碎片化学习

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

内连接 inner join

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

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

以下是运行代码及结果

左外连接 left join

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

下面是一个简单的案例

下面是测试用例

右外连接 right join

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

下面是一个简单的案例

下面是运行及其结果

全连接 full join

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

下面是一个简单的案例

以下是运行及结果

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

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

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

以下是一个简单的例子

交叉连接 cross join

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

以下是一个简单的案例

https://blog.csdn.net/u013412790/article/details/51626307

【编辑推荐】

  1. 直击Titan图数据库:如何提升25%+的反欺诈检测效率?
  2. 掌握MySQL数据库这些优化技巧,事半功倍!
  3. 去中心化数据库:传统IT与区块链的未来融合形式
  4. 在数据库中存储一棵树,实现无限级分类
  5. SQL入门:使用SQL构建一个关系数据库
【责任编辑:庞桂玉 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

JavaScript核心技术

它从最简单的地方入手,不仅讲述了JavaScript的基础知识,还讲述了JavsScript如何操作CSS、DOM等Ajax基础技术。而关于跨浏览器兼容问题的解...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊