select * from t_class_info as c;

id   gradeid  classid  year        createtime                       updatetime

1    一年级    一班    2018           
2    二年级    一班    2018           
3    三年级    一班    2018           
4    四年级    一班    2018           
5    五年级    一班    2018           
6    六年级    一班    2018           
7    七年级    一班    2018           
8    八年级    一班    2018           
9    九年级    一班    2018           
10    一年级    二班    2018        0000-00-00 00:00:00    0000-00-00 00:00:00
11    二年级    二班    2018        0000-00-00 00:00:00    0000-00-00 00:00:00
12    三年级    二班    2018        0000-00-00 00:00:00    0000-00-00 00:00:00
13    四年级    二班    2018        0000-00-00 00:00:00    0000-00-00 00:00:00
14    五年级    二班    2018        0000-00-00 00:00:00    0000-00-00 00:00:00
15    六年级    二班    2018        0000-00-00 00:00:00    0000-00-00 00:00:00
16    七年级    二班    2018        0000-00-00 00:00:00    0000-00-00 00:00:00
17    八年级    二班    2018        0000-00-00 00:00:00    0000-00-00 00:00:00
18    九年级    二班    2018        0000-00-00 00:00:00    0000-00-00 00:00:00

select * from t_user_info as u;

id   cardno name sex age birth                           gradeid

1    111    111    1    12    2018-07-31 17:17:53    2
2    222    222    0    15    2018-07-31 17:17:59    2
3    333    333    1    15    2018-07-31 17:18:02    3
4    555    444    1    16    2018-07-31 17:18:10    3
5    444    555    1    15    2018-07-31 17:18:04    3
6    666    666    0    14    2018-07-31 17:18:07    1
7    777    777    1    18    2018-07-31 17:18:12    1
8    888    888    1    23    2018-07-31 17:49:45

-- 左表全纪录+连接相等记录
select * from t_user_info as u left join t_class_info as c on c.id=u.gradeid; -- 右表全纪录+连接相等记录
select * from t_user_info as u right join t_class_info as c on c.id=u.gradeid; select * from t_class_info as c right join t_user_info as u on c.id=u.gradeid;
select * from t_class_info as c left join t_user_info as u on c.id=u.gradeid; -- 连接相等记录
select * from t_user_info as u inner join t_class_info as c on c.id=u.gradeid; -- MySQL不支持这种写法,Oracle才支持
-- select * from t_user_info as u full join t_class_info as c on c.id=u.gradeid;

LEFT JOIN、RIGHT JOIN、INNER JOIN、FULL JOIN 使用的更多相关文章

  1. SQL Server之LEFT JOIN、RIGHT LOIN、INNER JOIN的区别

    很多人刚入门的时候分不清LEFT JOIN.RIGHT LOIN 和 INNER JOIN的区别,对它们的定义比较模糊,今天就简单的介绍一下它们的区别,对于入门的人来说,应该能够帮助你们理解. lef ...

  2. SQL join中级篇--hive中 mapreduce join方法分析

    1. 概述. 本文主要介绍了mapreduce框架上如何实现两表JOIN. 2. 常见的join方法介绍 假设要进行join的数据分别来自File1和File2. 2.1 reduce side jo ...

  3. Sort merge join、Nested loops、Hash join(三种连接类型)

    目前为止,典型的连接类型有3种: Sort merge join(SMJ排序-合并连接):首先生产driving table需要的数据,然后对这些数据按照连接操作关联列进行排序:然后生产probed ...

  4. SQL高级查询技巧(两次JOIN同一个表,自包含JOIN,不等JOIN)

    掌握了这些,就比较高级啦 Using the Same Table Twice 如下面查询中的branch字段 SELECT a.account_id, e.emp_id, b_a.name open ...

  5. 【fork/join】java并发编程-fork/join示例

    package com.chinamobile.epic.tako.common.graphite.query.sync.impl; import com.google.common.collect. ...

  6. 比较一下inner join(可直接简写为join)和where直接关联

    SELECT * FROM A ,B WHERE A.ID = B.ID 是比较常用的2个表关联.之前一直用这个,后来换了家公司发现这家公司的报表大多数都是用inner join,稍微研究了一下.查阅 ...

  7. JOIN中的外连接(external join)

    外连接: ---外连接并不要求连接的两表的每一条记录在对方表中都有一条匹配记录.要保留所有记录(甚至这条记录没有匹配的记录也要保留)的表成为保留表.外连接可以一句连接表保 留左表,右表和全部表的行二进 ...

  8. 44 答疑(三)--join的写法/Simple nested loop join的性能问题/Distinct和group by的性能/备库自增主键问题

    44 答疑(三) Join的写法 35节介绍了join执行顺序,加了straight_join,两个问题: --1 如果用left join,左边的表一定是驱动表吗 --2 如果两个表的join包含多 ...

  9. SQL——左连接(Left join)右连接(Right join)内连接(Inner join)

    概念(定义) ​首先还是介绍一下这三个的定义 ​Left join:即左连接,是以左表为基础,根据ON后给出的两表的条件将两表连接起来.结果会将左表所有的查询信息列出,而右表只列出ON后条件与左表满足 ...

  10. webpack 参数1、context: path.resolve 2、path.join('', '..', 'aa') 3、 path.posix.join('static','/aa')

    1.context: path.resolve 项目入口路径 2. 3.

随机推荐

  1. 使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务

    在Spring Cloud Netflix栈中,各个微服务都是以HTTP接口的形式暴露自身服务的,因此在调用远程服务时就必须使用HTTP客户端.我们可以使用JDK原生的URLConnection.Ap ...

  2. 移动网页广告引入mraid.js使用指南

    在网上找mraid相关资料,相对比较少,大多都是API介绍,概念介绍等,没有一份详细的移动端网页广告使用教程,经过自己两天的摸索,完成了开发的移动端网页版的广告加入mraid功能. 背景: 我开发了移 ...

  3. GoLang之反射

    反射 反射(reflect) 所谓反射(reflect)就是能检查程序在运行时的状态. 使用反射的三条定律: 反射可以将“接口类型变量”转换为“反射类型对象”: 反射可以将“反射类型对象”转换为“接口 ...

  4. browser-sync events.js:85 throw er; // Unhandled 'error' event

    browser-sync运行的时候提示如下错误,这个是因为browser-sync 配置的端口被占用的原因. events.js:85 throw er; // Unhandled 'error' e ...

  5. 【转】最新版PyCharm(2018.2)破解

    源链接 1.下载jar包 我突然发现这个包是通用的!IDEA,PyCharm都可以用 链接:http://idea.lanyus.com/ 上篇IDEA破解依旧是这个jar包 2.jar包放置位置将j ...

  6. [Codis] Codis3部署流程

    #0 前言 最近因为项目需要,研究了一下传说中的Codis.下面跟大家分享Codis3的搭建流程 https://github.com/CodisLabs/codis #1 Codis是什么 官方的介 ...

  7. 关于linux - Centos 7 下DHCP服务的安装与配置

    DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作, 主要有两个用途:给内部网络或网络服务供应商自动分配IP ...

  8. 【CF461E】Appleman and a Game 倍增floyd

    [CF461E]Appleman and a Game 题意:你有一个字符串t(由A,B,C,D组成),你还需要构造一个长度为n的字符串s.你的对手需要用t的子串来拼出s,具体来说就是每次找一个t的子 ...

  9. word2vec:基本的安装及使用简介

    官方word2vec的github下载地址:https://github.com/svn2github/word2vec 环境,linux-ubuntu-14.04LST,安装好git, gcc版本4 ...

  10. maven的安装及试用

    安装包准备: jdk-7u79-linux-x64.rpmapache-maven-3.5.3-bin.tar.gz 安装: rpm -ihv jdk-7u79-linux-x64.rpmtar -x ...