一、交叉连接、内连接、外连接的区别

  • 交叉连接又叫’笛卡尔积’,它是指不使用任何条件,直接将一个表的所有记录和另一个表中的所有记录一一匹配。
  • 内连接 则是只有条件的交叉连接,根据某个条件筛选出符合条件的记录,不符合条件的记录不会出现在结果集中,即内连接只连接匹配的行 。
  • 外连接 其结果集中不仅包含符合连接条件的行,而且还会包括左表、右表或两个表中的所有数据行,这三种情况依次称之为左外连接,右外连接,和全外连接

二、交叉连接

1. 并集 union

  • UNION 用于合并两个或多个 SELECT 语句的结果集,并消去表中任何重复行
  • 同时,每条 SELECT 语句中的列的顺序必须相同,而且也要具有相同的数据类型,列的数量也必须相同。如果不想去掉重复的行,可以使用union all


2. 交集 join

3. 差集 not

  • 假设有集合A和B,所有属于A且不属于B的元素的集合被称为A与B的差集。
    示例:对于集合A = {a, b, c, d}和集合B = {b, c, w},则A与B 的差集为{a, d}

4.笛卡尔积 CROSS JOIN



三、内连接

1. 等值连接inner join(不去重)

  • select语句先看的是from语句,因为from后的表起别名的话,where子句可以用,而select语句执行又在where子句之后。

2. 自然连接 natural join

3. 不等连接

  • select * from A INNER JOIN B on A.col>B.col;

四、外连接

1. 左外连接

2. 右外连接

3. 全外连接

  • mysql没有专门提供一个全外连接的关键字,需要使用union关键字

交叉连接、内连接和外连接的区别及使用方式相关推荐

  1. 详解SQL Server连接(内连接、外连接、交叉连接)

    在查询多个表时,我们经常会用"连接查询".连接是关系数据库模型的主要特点,也是它区别于其它类型数据库管理系统的一个标志. 什么是连接查询呢? 概念:根据两个表或多个表的列之间的关系 ...

  2. oracle连接总结(内连接、外连接、自然连接,交叉连接,自连接)

    永不放弃,一切皆有可能!!! 只为成功找方法,不为失败找借口! oracle连接总结(内连接.外连接.自然连接,交叉连接,自连接) 1.简述  1) 两个表的连接,是通过将一个表中的一列或者多列同另一 ...

  3. Mysql表连接:内连接、外连接、交叉连接、自然连接真的都不一样吗

    文章目录 前言 测试环境 创建测试数据 对比测试 内连接 交叉连接 外连接 左外连接 右外连接 自然连接 一般自然连接 自然左外连接 自然右外连接 STRAIGHT_JOIN 逗号分隔连接表 各种连接 ...

  4. SQL三种连接:内连接、外连接、交叉连接

    SQL三种连接:内连接.外连接.交叉连接 一.交叉连接(CROSS JOIN) 二.内连接(INNER JOIN) 三.外连接(LEFT JOIN.RIGHT JOIN.FULL JOIN) 1.左外 ...

  5. 内连接、外连接的区别及作用

    1.基本介绍 不管是内连接.外连接还是带where子句的多表查询,都组合自多个表,并生成结果表. 1.内连接:只返回两个表中连接字段相等的行.inner join(等值连接) 只返回两个表中联结字段相 ...

  6. 深入分析内连接、外连接、左连接、右连接、等值连接、自然连接和自连接之间的区别,看这篇就够了!

    多表查询经常用到连接,各种连接之间的区别应该注意总结. 首先大概认识各种连接的关系和由来: 表之间的连接常有以下两种: 一.:在SELECT语句的WHERE子句中使用比较运算符给出连接条件,对表进行连 ...

  7. SQL中内连接、外连接、交叉连接

    SQL中内连接.外连接.交叉连接 SQL连接可以分为内连接.外连接.交叉连接. 数据库数据:            book表                                      ...

  8. mysql内连接和外连接的区别_内连接、外连接的区别

    先来看一下,内连接的语法: SELECT  XXX FROM XXX INNER JOIN XXX ON XXX; 这里 INNER 可以省略,在上一篇博客中我们对于笛卡尔积现象的研究中(http:/ ...

  9. 4.mysql数据库创建,表创建模等模板脚本,mysql_SQL99标准的连接查询(内连接,外连接,满外连接,交叉连接)

     mysql数据库创建,表创建模等模板脚本 --用root用户登录系统,执行脚本 --创建数据库 create database mydb61 character set utf8 ; --选择数 ...

  10. 连接(交叉连接、内连接、外连接、自连接)

    本文非原创 可分为:交叉连接.内连接.外连接.自连接 1.使用交叉连接: 它是非限制连接,就是将两个表格不加任何条件的组合在一起, 即第一个表格的所有记录分别和第二个表格的每一条记录相连接 组合成新的 ...

最新文章

  1. 【转】C++类的sizeof大小
  2. 商务先锋 多功能一体化网络营销软件
  3. 《More_Effective_C++》pdf
  4. 2.Linux/Unix 系统编程手册(上) -- 基本概念
  5. 用c语言库函数进行排序
  6. wps日期加减算天数_日期相减之后的天数怎么用公式计算 - 卡饭网
  7. 微型计算机8086工作原理,8086到80486微型计算机系统原理与接口
  8. Dell笔记本电脑如何升级win10、如何恢复原装win8.1
  9. 学习Lua碰到的问题、踩坑记录
  10. Linux内核启动过程和Bootloader
  11. python输入一个三位整数、输出三位数之和_编写程序,从键盘输入一个3位的正整数,输出它的百位数,十位数和个位数,并且计算它的和...
  12. 《Windows办公指南》魔改C:\Windows\System32\drivers\etc\hosts实现一个数据中心
  13. 采用云计算的组织如何构建更好的现代化战略
  14. 关于ACCESS数据库版本问题
  15. 企业微信机器人读取服务器,智能机器人如何对接到企业微信?
  16. https基础知识详解
  17. 近乎于完美的数字笔记——Notion
  18. cf全屏设置win7推荐方法
  19. 工商银行网银查询接口开发问题(HTTPS)
  20. js字符串拼接 ·${}·

热门文章

  1. PASCAL标准过程与函数
  2. 基于stm32单片机外文文献_单片机STM32外文文献翻译、中英文翻译
  3. matlab程序设计课件,《MATLAB程序设计》PPT课件.ppt
  4. xml文件解析出现[xX][mM][lL]的解决办法
  5. SocksCapV2+Socks2HTTP
  6. Java中级面试题及答案(120道Java中级面试题大汇总)
  7. java连接SqlServer2000
  8. JVM内存模型及CMS、G1和ZGC垃圾回收器详解
  9. 网络聊天室Java群聊私聊_Java Spring + Spring MVC + Mybatis WebSocket实现网络聊天室(群聊+私聊)...
  10. native APP,hybrid APP和web APP