内连接 交集

inner join 或者 join

select * from person join card on person.cardId = card.id;

+------+--------------------+--------+------+-----------+

| id | name | cardId | id | name |

+------+--------------------+--------+------+-----------+

| 1 | 法外狂徒张三 | 1 | 1 | 饭卡 |

| 2 | 青春有你坤坤 | 3 | 3 | 公交卡 |

| 3 | 说唱选手电鳗 | 6 | 6 | 水卡 |

+------+--------------------+--------+------+-----------+

通过某个字段相等,查询出相关记录

外链接

左外链接 左边

left join 或者 left outer join

select * from person left join card on person.cardId = card.id;

左边数据取出来,右边数据,如果有相等的,显示,否则补null

+------+--------------------+--------+------+-----------+

| id | name | cardId | id | name |

+------+--------------------+--------+------+-----------+

| 1 | 法外狂徒张三 | 1 | 1 | 饭卡 |

| 2 | 青春有你坤坤 | 3 | 3 | 公交卡 |

| 3 | 说唱选手电鳗 | 6 | 6 | 水卡 |

+------+--------------------+--------+------+-----------+

右外链接 右边

right join 或 right outer join

select * from person right join card on person.cardId = card.id;

右边数据取出来,左边数据,如果有相等的,显示,否则补null

+------+--------------------+--------+------+-----------+

| id | name | cardId | id | name |

+------+--------------------+--------+------+-----------+

| 1 | 法外狂徒张三 | 1 | 1 | 饭卡 |

| 2 | 青春有你坤坤 | 3 | 3 | 公交卡 |

| 3 | 说唱选手电鳗 | 6 | 6 | 水卡 |

| NULL | NULL | NULL | 2 | 电卡 |

| NULL | NULL | NULL | 4 | 门禁卡 |

| NULL | NULL | NULL | 5 | 上网卡 |

+------+--------------------+--------+------+-----------+

完全外链接 mysql 不支持 full join all

select * from person left join card on person.cardId = card.id

union

select * from person right join card on person.cardId = card.id;

+------+--------------------+--------+------+-----------+

| id | name | cardId | id | name |

+------+--------------------+--------+------+-----------+

| 1 | 法外狂徒张三 | 1 | 1 | 饭卡 |

| 2 | 青春有你坤坤 | 3 | 3 | 公交卡 |

| 3 | 说唱选手电鳗 | 6 | 6 | 水卡 |

| NULL | NULL | NULL | 2 | 电卡 |

| NULL | NULL | NULL | 4 | 门禁卡 |

| NULL | NULL | NULL | 5 | 上网卡 |

+------+--------------------+--------+------+-----------+

create table person(

id int,

name varchar(20),

cardId int

);

create table card(

id int,

name varchar(20)

);

insert into card values(1,'饭卡'),(2,'电卡'),(3,'公交卡'),(4,'门禁卡'),(5,'上网卡'),(6,'水卡');

insert into person values(1,'法外狂徒张三',1),(2,'青春有你坤坤',3),(3,'说唱选手电鳗',6);

mysql常用四种连接_MySQL四种连接查询相关推荐

  1. mysql各种联结的区别_mysql几种连接方式区别

    mysql的几种join 2017年03月19日 14:49:07 carl-zhao 阅读数:7845 标签: mysqlsqljoin 更多 个人分类: MySQL 版权声明:本文为博主原创文章, ...

  2. mysql的内外连接_MYSQL的内外连接

    1.内联接(典型的联接运算,使用像 =  或 <> 之类的比较运算符).包括相等联接和自然联接. 内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行.例如,检索 students和 ...

  3. mysql常用的存储引擎_Mysql存储引擎

    什么是存储引擎? 关系数据库表是用于存储和组织信息的数据结构,可以将表理解为由行和列组成的表格,类似于Excel的电子表格的形式.有的表简单,有的表复杂,有的表根本不用来存储任何长期的数据,有的表读取 ...

  4. mysql 常用sql调优_MySQL 常用SQL优化

    MySQL 常用SQL优化: 一.大批量插入数据: 1.对于load MyISAM存储引擎的表,可以通过关闭打开MyISAM表非唯一索引的更新来提升导入速度: 例:mysql > alter t ...

  5. mysql的左右连接_MySQL之左连接与右连接

    左连接: select 列1,列2,列N from tableA left join tableB on tableA.列 = tableB.列(正常是一个外键列) [此处表连接成一张大表,完全当成一 ...

  6. mysql 全表连接_MySQL学习—多表查询(内连接,外链接,全连接)

    一个项目中肯定会有多张数据表,而数据表之间会存在各种各样的关系.这时我们需要的数据,可能不会直接通过一张表全部获取到,这时就需要同时查询多张数据表,得到最后想要的数据. 下面以具体的实例来进行相关知识 ...

  7. mysql对所有id求积_MySQL学习笔记(二)—查询

    一.多表连接查询 新建两张表t_user.t_order.       1.内连接 返回满足条件的所有记录. (1)显式内连接 使用inner join关键字,在on子句中设定连接条件. SELECT ...

  8. mysql四种输入_mysql四种事务隔离级别

    mysql事务并发问题 ACID什么的就不啰嗦了.mysql多个事务并发的时候,可能会出现如下问题: 1. 更新丢失 即两个事务同时更新某一条数据,后执行的更新操作会覆盖先执行的更新操作,导致先执行的 ...

  9. mysql常用基础操作语法(四)--对数据的简单无条件查询及库和表查询【命令行模式】

    1.mysql简单的查询:select 字段1,字段2...  from tablename; 如果字段那里写一个*,代表查询所有的字段,等同于指定出所有的字段名,因此如果要查询所有字段的数据,一般都 ...

最新文章

  1. Android 学习笔记
  2. 博途plc连接电脑_PLC报错,电脑连接不了PLC
  3. 红米路由器ac2100怎样设置ipv6_Redmi路由器AC2100开箱:六天线简单直接,功能丰富对玩家友好...
  4. 第一节 Memcached分布式缓存入门
  5. 从医生看病和快餐店点餐理解Node.js的事件驱动
  6. Learn RxJava
  7. iOS 极光推送:This application or a bundle it contains has the same bundle identifier as this applicatio
  8. Kia#39;s Calculation(贪心)
  9. c语言取反运算详细步骤,C语言之位运算详解
  10. 分页查询PageHelper.startPage()无法实现分页
  11. 【新概念4】【15】Secrecy in industry
  12. Unparseable date: “2019-03-27“
  13. chapter-2数据库基本知识
  14. Redis 源码解读之 Rehash 的调用时机
  15. ccc4和ccc5的区别
  16. 华裔计算机科学家图灵奖,首位获得图灵奖的华裔科学家-姚期智
  17. java学习——JDK安装
  18. 第一坊颜韵YCY恶心主播,忘恩负义白眼狼说颜韵真不过分
  19. 动态加载当前年份的前五年后十年
  20. ikun(小黑子)必须知道的坤坤谐音梗

热门文章

  1. windows常见快捷键
  2. 【docker学习之二】Docker的基本概念
  3. 疯狂VirtualBox实战讲学录 以及 virtualbox完全学习手册 之我见
  4. Android AbsListView子类反复调用getView()和getCount()问题分析
  5. Reading Club·Beijing第1期DeepQA框架与Siri架构会场笔记(PPT下载)
  6. colgroup标签
  7. 53 - 9. 回文数
  8. asp.net session 如何知道是哪个浏览器客户端_小弟该如何复习 Java?
  9. 枚举算法:最小连续n个合数。试求出最小的连续n个合数(其中n是键盘输入的任意正整数)。
  10. Web加固linux,Linux系统下web服务器的加固