mysql左/右/内连接

原创 2015年07月08日 16:31:47

一般所说的左连接,外连接是指左外连接,右外连接。做个简单的测试。
先说左外连接和右外连接:
SQL>select * from t1;

    ID NAME
     1 aaa
     2 bbb

SQL>select * from t2;

    ID        AGE
     1         20
     3         30

左外连接:
SQL>select * from t1 left join t2 on t1.id=t2.id;

    ID NAME                         ID        AGE
     1 aaa                           1         20
     2 bbb

右外连接:
SQL>select * from t1 right join t2 on t1.id=t2.id;

    ID NAME                         ID        AGE
     1 aaa                           1         20
                                     3         30

从上面的显示你可以看出:左外连接是以左边的表为基准。通俗的讲,先将左边的表全部显示出来,然后右边的表id与左边表id相同的记录就“拼接”上去,比如说id为1的记录。如果没有匹配的id,比如说t1中id为2的t2中就没有。那边就以null显示。
右外连接过程正好相反。

再看内连接:
SQL>select * from t1 inner join t2 on t1.id=t2.id;

    ID NAME                         ID        AGE
     1 aaa                           1         20

看到没有?只有一条记录。内连接就是只取出符合过滤条件的记录 也就是t1.id=t2.id 那么符合t1.id=t2.id的记录只有id=1这一条,所以只显示一条。 不像外连接,是将你作为基准的表(左外连接就是左边表为基准,右外连接就是右边表为基准)的所有行都显示出来。

相关文章推荐

mysql 5.7 安装及修改/重置密码

之前在小型机上装了feroda系统,装了mysql后,发现无法找到root用户密码, mysqld_safe也不能用,最后发现一片文章,原来mysql5.7可以通过my.cnf配置文件设置不验证密码...

TCP建立连接/断开连接状态详解

TCP连接的建立可以简单的称为三次握手,而连接的中止则可以叫做 四次握手。   建立连接   在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。 第一次握手:建立连...

iOS之NSBundle的使用/打包成bundle文件

1.Bundle 文件,简单理解,就是资源文件包。我们将许多图片、XIB、文本文件组织在一      起,打包成一个 Bundle 文件。方便在其他项目中引用包内的资源。 2.Bundle 文件...

android全屏/沉浸式状态栏下,各种键盘挡住输入框解决办法

*本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 在开发中,经常会遇到键盘挡住输入框的情况,比如登录界面或注册界面,弹出的软键盘把登录或注册按钮挡住了,用户必须把软键盘收起,才能点...
  • smileiam
  • smileiam
  • 2017年04月04日 11:03
  • 12198

iOS---开发者账号团队邀请成员/管理员

一、打开iOS公司开发者账号的账户:https://developer.apple.com/account/ ,点击people: 二、点击invite people按钮: 三、输入要邀请的管...

【CSS/JS学习】如何实现单行/多行文本溢出的省略(...)

引言: 写前端UI的朋友们也许都遇到过这样的问题:我们需要实现这样一个需求,在一个父级元素中隐藏一个可能过长的文本: http://www.cnblogs.com/penghuwan/p/...

java类的初始化块/执行顺序,实例化对象数据赋值

java里初始化一个类的对象,通过初始化快或者构造方法进行数据赋值。与其相关的执行代码有这么几种: 静态初始化块 初始化块 构造方法 静态初始化块 静态初始化块只在类加载时执行一次,同时静态初始化...

IntelliJ IDEA / Tomcat - 内存溢出/内存优化最佳实践

我的最终解决方案:在Run/Debug editconfiguration 的你要运行的tomcat里面的 vm options里面输入:-server -XX:PermSize=128M -XX...
  • LABLENET
  • LABLENET
  • 2016年04月14日 10:10
  • 16946

linux环境变量设置方法总结(PATH/LD_LIBRARY_PATH)

PATH:  可执行程序的查找路径 查看当前环境变量: echo $PATH 设置:  方法一:export PATH=PATH:/XXX 但是登出后就失效 方法二:修改~/.bashrc或...

苹果开发者证书下载/安装

原文地址:开发者证书下载 安装 证书。(最好是下载它的完整的向导说明书,是一个PDF,7M多,步骤还是挺详细的。但是这本手册在网上没有见过中文版的说明,所以在这里简单介绍一下。) 这个开发者中心的...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:mysql左/右/内连接
举报原因:
原因补充:

(最多只允许输入30个字)