30秒懂SQL中的join(2幅图+30秒)

废话不多说,直接上图秒懂。

t1表的结构与数据如下:

t2表的结构与数据如下:

inner join

select * from t1 inner join t2 on t1.id = t2.id;

inner join会把公共部分的数据查询出来:

left join

select * from t1 left join t2 on t1.id = t2.id;

left join查询出来的结果和前表记录数一样多,后表如果没有对应记录,则列为空:

right join

right join能转化为left join,例如:

select * from t1 right join t2 on t1.id = t2.id;

能转化为

select * from t2 left join t1 on t1.id = t2.id;

只是前表发生了变化而已。

大伙可结合自己的业务场景,选择正确的join。

原文发布于微信公众号 - 架构师之路(road5858)

原文发表时间:2015-11-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏orientlu

python 模块与包

每个文件夹对应一个包,包里面可以包含多个包,对应的每个 .py 文件是一个具体模块。 封装成包,在文件上组织好代码后,确保每个目录都要一个 __init__....

16830
来自专栏BY的专栏

终端显示树状文件结构

40380
来自专栏河湾欢儿的专栏

常用的dos命令

10820
来自专栏Youngxj

emlog让微语支持html代码

35840
来自专栏架构师之路

2副图秒懂SQL中的join

废话不多说,直接上图秒懂。 t1表的结构与数据如下: ? t2表的结构与数据如下: ? inner join select * from t1 inner j...

37650
来自专栏ImportSource

PATH 和 CLASSPATH 的区别

java中的path和classpath是很多java初入者比较困惑的两个变量。本文简单列举二者区别。 PATH and CLASSPATH的区别 1)第一个主...

968120
来自专栏我的博客

CI页面乱码

今天项目页面乱码 我确认了数据库读取时utf8,页面也添加 <meta http-equiv=”content-type” content=”text/html...

31560
来自专栏null的专栏

python技巧——Python的读文件

在Python中,读文件的命令有如下的三个: read() readline() readlines() 1、read()        read()函数是一次...

35740
来自专栏维C果糖

史上最简单的 MySQL 教程(七)「中文数据问题」

由于计算机仅识别二进制数据,而且人类则更倾向于识别字符(符号),因此就需要一个二进制与字符的对应关系,也就是字符集。

39050
来自专栏zhangdd.com

tomcat8 启动报错: ignoring option PermSize=256m处理方法

Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=512m; suppor...

20110

扫码关注云+社区

领取腾讯云代金券