文档章节

SQL中的LEFT RIGHT INNER JOIN的区别及学习

o
 osc_mervd488
发布于 2018/04/25 10:48
字数 454
阅读 12
收藏 0

精选30+云产品,助力企业轻松上云!>>>

       多表连接,在工作中是经常遇见的,现在来讲讲LEFT、RIGHT和INNER JOIN的用法,用法会了区别就出来了,写的不专业,只是为了便于理解和学习。

       首先讲INNER JOIN的使用,INNER JOIN是根据ON的条件过滤出两表条件相同的数据,如图的Student表和Course表。

      1、查询“张大大”选修了那些课程(为方便用*查出所有的字段)

 

 

SELECT *

FROM Student s

INNER JOIN Course c

ON s.课程号=c.课程号

WHERE c.姓名=“张大大”;

分析:ON后面的条件是 s.课程号=c.课程号,根据条件,两个表相同的是“1101”,所以结果就是

 

   LEFT JOIN左连接,顾名思义,向左连接,左表是主表,查询主表的所有数据,过滤ON条件符合的右表的数据,还是以Student和Course为例。

        2、使用LEFT JOIN查询所有学生的选课情况。

       SELECT * 

       FROM  Student s 

       LEFT JOIN Course c

  ON s.课程号=c.课程号;

分析:首先要明白那个是主表也就是左表,这个靠平时接触的多了就会了,Student表是主表,Course是右表,查询Student表所有的信息,过滤ON条件相同的Course数据,所以结果是:

 

  RIGHT JOIN 和LEFT JOIN是相反的,右边是主表,LEFT 和 RGITH JOIN 理解一个就都明白了,主要还是找主表。

  3、使用RIGHT JOIN查询课程的选课情况。

  SELECT * 

  FROM  Student s

  RIGHT JOIN Course c

  ON s.课程号=c.课程号;

分析:主表是Course所以放在右边,左边Student则是要过滤的表。所以结果是:

 结语:我平常用的INNER JOIN和LEFT JION比较多,RIGHT JOIN和LEFT JOIN 一样,只是换换位置的问题。

  

 

上一篇: Flex使用总结
o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
JOIN ,LEFT JOIN ,ALL JOIN 等的区别和联系

从一个MySQL left join优化的例子加深对查询计划的理解 inner join, left join, right join,all join区别 Join 表示两个表都必须存在的 left join 表示以左边的表为基准,不管你右边的表有没...

osc_g3lqfv0y
2018/01/19
7
0
Mysql - JOIN详解

<h2>0 索引</h2><blockquote><ul><li><strong>JOIN</strong>语句的执行顺序</li><li><strong>INNER/LEFT/RIGHT/FULL JOIN</strong>的区别</li><li><strong>ON</strong>和<strong>WHERE</stro......

osc_x5bcobu8
2018/11/18
1
0
左连接、右连接、内连接和where

首先可以看下w3school写的关于join的介绍: http://www.w3school.com.cn/sql/sql_join.asp on是关联条件,where是筛选条件 数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临...

osc_k0sclxgn
2018/06/13
1
0
SQL中的Join和Where的区别

一.sql语句中left join、inner join中的on与where的区别 0.各种join操作的概念和作用   left join :左连接,返回左表中所有的记录以及右表中连接字段相等的记录。   right join :右连接,...

SummerChill
2017/10/18
0
0
图解SQL的Join

对于SQL的Join,在学习起来可能是比较乱的。我们知道,SQL的Join语法有很多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子有点不是很清楚。Coding Horror上有一篇...

Goopand
2015/03/30
40
0

没有更多内容

加载失败,请刷新页面

加载更多

Eclipse_JavaEE_Tomcat_MySQL环境配置

安装java环境,配置系统变量(JAVA_HOME,绝对路径) 下载eclipse+Tomcat+mysql window——》preference——》server——》runtime——》tomcat环境 项目右键build path 配mysql jar ,libra...

愿有时光可回首
今天
24
0
MySQL原理 - InnoDB引擎 - 行记录存储 - Redundant行格式

本文基于 MySQL 8 在上一篇:MySQL原理 - InnoDB引擎 - 行记录存储 - Compact格式 中,我们介绍了什么是 InnoDB 行记录存储以及 Compact 行格式,在这一篇中,我们继续介绍其他三种行格式。 ...

zhxhash
今天
29
0
leetcode面试题 17.13(恢复空格)--Java语言实现

求: 哦,不!你不小心把一个长篇文章中的空格、标点都删掉了,并且大写也弄成了小写。像句子"I reset the computer. It still didn’t boot!"已经变成了"iresetthecomputeritstilldidntboo...

拓拔北海
今天
19
0
B站跨年晚会究竟做对了什么?

燃财经(ID:rancaijing)原创 作者 | 赵磊 编辑 | 周昶帆 “补课”是《bilibili晚会 二零一九最美的夜》这个视频中,观众在前两分钟刷得最多的弹幕,寓意着观众是在元旦之后回来补看跨年晚会...

子乾建建_Jeff
01/07
63
0
关于Scrapy爬虫项目运行和调试的小技巧(上篇)

点击上方“Python爬虫与数据挖掘”,进行关注 回复“书籍”即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 迟日江山丽,春风花草香。泥融飞燕子,沙暖睡鸳鸯。 扫除运行Scrapy爬虫程序...

yuhan336
04/02
26
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部