应用场景:用于查询一个表中有,另一个表中没有的记录。 特点:

  1. 外连接的查询结果为主表中的所有记录,如果从表中有和他匹配的,则显示匹配的值,如果从表中没有,则显示 null
    外连接查询结果 = 内连接结果 + 主表中有而从表中没有的记录。
  2. 左外连接中:left 左边的为主表 右外连接:right 右边的为主表
  3. 左外和右外交换两个表的顺序,可以实现同样的效果。
  4. 全外连接 = 内连接 + 表1有但表2没有 + 表2有但表1没有的

案例1:左、右外连接

-- 引入:查询男朋友不在男生表的女神名
SELECT b.`name`, bo.*
FROM beauty b
LEFT OUTER JOIN boys bo
ON b.boyfriend_id=bo.id
WHERE bo.id IS NULL;

案例2:查询哪个部门没有员工

-- 左外连接
SELECT d.*,e.employee_id
FROM departments d
LEFT OUTER JOIN employees e
ON d.department_id=e.department_id
WHERE e.employee_id IS NULL;
-- 右外连接
SELECT d.*,e.employee_id
FROM employees e
RIGHT OUTER JOIN departments d
ON d.department_id=e.department_id
WHERE e.employee_id IS NULL;

案例3:全外连接

-- 不支持!
USE girls;
SELECT b.*,bo.*
FROM beauty b
FULL OUTER JOIN boys bo
ON b.boyfriend_id = bo.id;

MySQL sql99语法—左(右)外连接相关推荐

  1. full join 和full outer join_28.MySQL中的左(右)外连接 LEFT(RIGHT) [OUTER] JOIN

    1.准备 CREATE DATABASE mahaiwuji;USE mahaiwuji;CREATE TABLE grade( id INT(4) PRIMARY KEY, name VARCHAR ...

  2. mysql 三个表的外连接方式,MySQL表连接使用详解,内连接,外连接,交叉连接

    本章节向大家介绍如何使用 MySQL 的 JOIN 在两个或多个表中查询数据. 前提如下供后面学习所用: 查看学生表的全部记录SELECT * FROM STUDENT; 查看地址表的全部记录:SEL ...

  3. mysql与配偶同性_mysql 左,右,内连接

    左右连接 全相乘方法(效率很低) mysql> select * from test10; +------+-------+ | id   | sname | +------+-------+ ...

  4. MySQL LEFT/RIGHT JOIN:外连接查询

    MySQL 中内连接是在交叉连接的结果集上返回满足条件的记录:而外连接先将连接的表分为基表和参考表,再以基表为依据返回满足和不满足条件的记录. 外连接更加注重两张表之间的关系.按照连接表的顺序,可以分 ...

  5. MySQL sql99语法介绍

    语法: SELECT 查询列表 FROM `表1` 别名 [连接类型] JOIN `表2` 别名 ON 连接条件 [WHERE 筛选条件] [GROUP BY 分组] [HAVING 筛选条件] [O ...

  6. MySQL sql99语法—等值连接

    等值连接 特点: 可以添加排序.分组.筛选 inner 可以省略 筛选条件放在where后,连接条件放在on后 和sql92标准等值连接效果一样 案例1:查询员工名.部门名 SELECT last_n ...

  7. MySQL sql99语法—自连接

    自连接 查询包含字符k的员工名字和上级名字 SELECT e.last_name,m.last_name FROM employees e INNER JOIN employees m ON e.ma ...

  8. MySQL sql99语法—非等值连接

    案例1:查询员工的工资级别 SELECT salary,grade_level FROM employees e JOIN job_grades g ON e.salary BETWEEN g.low ...

  9. 【MySQL】MySQL内连接和外连接详细总结

    目录 多表查询的分类3:内连接VS外连接(重难点) 1. 内连接 2.外连接 3. SQL99语法实现多表查询 3.1 SQL99实现内连接 3.2 SQL99语法实现外连接 3.2.1 左外连接 3 ...

最新文章

  1. Win32.Lioten.SG病毒
  2. python 矩阵相乘不能交换
  3. Windows Pe 第三章 PE头文件-EX-相关编程-1(PE头内容获取)
  4. Android自定义Layout
  5. java技术详解_Java反射技术详解及实例解析
  6. 大数据,大格局,大发展
  7. 关于PHP数组方法array_walk的疑问
  8. SAP Spartacus cxFocus增添了refresh Focus功能后的一些考虑
  9. django前后端分离部署
  10. shiro启动之后页面访问不了_java:shiro入门——4
  11. 集成spring框架的web.xml
  12. 聊聊Elasticsearch的CachedSupplier
  13. jquery的dom操作之创建节点
  14. mysql 配置root密码_Mysql安装与配置调优及修改root密码的方法
  15. 会议录播软件测试自学,如何录制Zoom视频会议?
  16. HTML5之插入图片
  17. 分享一些百度贴吧引流的实用干货和防删技巧
  18. 【JAVA】集合框架及复杂度
  19. html文字浮雕效果不起作用,ps浮雕效果 怎么把文字弄成浮雕效果
  20. Android从网页中跳转到APP

热门文章

  1. Django内建模版标签和过滤器
  2. MySQL优化器cost计算
  3. spring cloud: 使用consul来替换config server,config key/value 具体的配置详解
  4. maven报错找不到依赖
  5. Android—常用组件练习
  6. 多给明年留些钱 明年必将要火的好手机
  7. php basic syntax
  8. offSet().left 与position().left的区别
  9. C# 值类型与引用类型的详解
  10. PHP笔记 ---关于web应用的安全性问题