外链接查询:即要查询有关联关系的数据,还要查询没有关联关系的数据。(个人理解为:表A和表B两个关联的列中)如下图:

     

    emmm,简单的来说两个表的关联关系:book.bid=bookshop.id,他们两个表的关联的两个列中可能book.bid的列中有值,而bookshop.id中为空值,这个时候就    需要用外链接查询啦。

左外连接查询:一左边的表为主,查询左表中所有的数据,以及与之关联的右表中的数据。

  格式:

    select 别名1.*/列名,别名2.*/列名

    from 左表 别名1 left (outer) join 右表 别名2

    on 关联条件

  例:

    1、查询book表中所有书籍的编号,名称,所属书店编号、名称

      

    2、查询书店表中所有的书店信息以及该书店中书籍的编号,名称根据书籍的编号进行升序排列

      

右外连接查询:以右边的表中为主,查询右表中所有的数据,以及与之关联的左表中的数据

  格式:

    select 别名1.*/列名,别名2.*/别名

    from 左表 别名1 right outer join 右表 别名2

    on 关联条件

  例:

    查询book表中书名中不包含"贩"的所有书籍的编号,名称以及所属书店编号、名称、地址,最后根据书店编号进

    行升序排列,如果书店编号一致,根据书籍的编号进行降序排列

       

    emmm,稍微提一下,Oracle中有full join,MySQL中没有。

MySQL☞左外链接与右外连接的更多相关文章

  1. 大数据算法设计模式(2) - 左外链接(leftOuterJoin) spark实现

    左外链接(leftOuterJoin) spark实现 package com.kangaroo.studio.algorithms.join; import org.apache.spark.api ...

  2. SQL - 外链接和内连接

    外链接和内连接: leetcode 题目:编写一个 SQL 查询,满足条件:无论 person 是否有地址信息,都需要基于上述两表提供 person 的以下信息: 第一次的答案:(错误) select ...

  3. mysql左外连接

    左外连接的概念性不说了,这次就说一说两个表之间的查询步骤是怎么样的? 例如 SELECT ut.id,ut.name,ut.age, ut.sex,ut.status,st.score,st.subj ...

  4. sql 三表左外链接的2种写法【原】

    初始化语句 DROP TABLE student; ) )); ','bobo'); ','sisi'); ','gugu'); ','mimi'); DROP TABLE room; ) ),roo ...

  5. mysql左外连接,右外连接,全连接

  6. mysql 数据操作 多表查询 多表连接查询 外链接之左连接 右连接

    1.外链接之左连接:优先显示左表全部记录   left join 在内连接的基础上保留左表的记录 即便左表有一条记录和右表没有关系,也把他留下 mysql> select * from empl ...

  7. Mysql的内连接,外链接,交叉链接

    内连接:只连接匹配的行  inner join select A.*,B.* from A,B where A.id = B.parent_id 外链接包括左外链接,右外链接,全外链接 左外链接:包含 ...

  8. SQL: 左连接,右连接,内连接,左外连接,右外连接,完全连接

    例子: ---------------------- --------------------------- a表 id name b表 id job parent_id 1 张三           ...

  9. javaWeb学习笔记——关于交叉连接-内连接-左外连接-右外连接的区别

    废话不说:直接上图1 图1-1 table1表 图1-2 table2 图1-3 cross join 交叉连接 图1-4 显示内连接 图1-5 左外链接 图1-6 右外链接 

随机推荐

  1. python文件操作指令

    原文地址:http://www.cnblogs.com/rollenholt/archive/2012/04/23/2466179.html 常用的文件操作指令: python中对文件.文件夹(文件操 ...

  2. 将本地已经存在的非git项目提交到github上的空仓库

    一.本地项目执行操作 1.在本地项目目录下初始化git仓库 git init 2.将本地项目下工作区的所有文件添加到git版本库的暂存区中 git add . (可以创建.gitignore文件忽略不 ...

  3. Linux下一种简单易行的cpu benchmark方法

    用Linux自带的bc计算器计算pi值的一种benchmark手段   其实很简单,就是一行命令. time echo “scale=5000; 4*a(1)” | bc -l -q time是计时程 ...

  4. (转)查看mysql数据库连接数、并发数相关信息

    查看mysql数据库连接数.并发数相关信息 1.mysql> show status like 'Threads%';+-------------------+-------+| Variabl ...

  5. centos6.4 安装code::blocks

    今天下午闲着没事尝试在自己的PC中的CentOS上装一个Code::Blocks,因为是Linux菜鸟折腾了一下午才基本算搞定但依然有疑惑: 在网上各种谷哥度娘最后才发现还是官方的文档最靠谱:看这里. ...

  6. DDL-数据类型

    一.数值型1.整型tinyint.smallint.mediumint.int/integer.bigint1         2        3          4            8 特 ...

  7. 12c数据库重启后自动启动pdb

    由于最近管理12c数据库,创建了9个新的pdb.相对于以前11g版本每天一个一个的环境检查,方便了很多. 但是因为一次意外宕机,数据库重启.虽然数据库重启,但是管理的pdb确不能自动重启,所以需要手动 ...

  8. 误卸载glibc类库导致系统崩溃解决方案

    由于系统中没有yum环境需要编译安装redis,但系统中却没有安装gcc和gcc-c++,挂载本地镜像安装gcc和gcc-c++由于版本太高,由于一时疏忽误将系统的依赖库glibc使用rpm -e 命 ...

  9. OSI参考模型和TCP/IP模型基本知识

    OSI七层模型 为了解决网络之间的兼容性问题,实现网络设备间的相互通信,ISO于1984年提出的OSI参考模型(开放系统互连参考模型).但是由于种种原因,并没有一种完全忠实于OSI参考模型的协议族流行 ...

  10. 在mac上使用tar.gz安装mysql

    官方: download: https://dev.mysql.com/downloads/mysql/ mysql参考文档:https://dev.mysql.com/doc/ 环境: macOS ...