SQL中多表查询:左连接、右连接、内连接、全连接、交叉连接

一、左连接,右连接,内连接关系

左连接:左表全部+两个表交集(①+②)

右连接:右表全部+两个表交集(③+②)

内连接:两个表交集(②)

二、结合具体例子看(已经在mysql中执行过的例子,可以运行,没有错误)

表1

表2

1、左连接(left join)

     返回左表所有行,右表与之匹配记录,若没有,返回null

select a.id,a.name,b.address from empi_patient a LEFT JOIN empi_patient_copy2 b on a.id = b.id

执行结果:

2、右连接(right join)

      返回右表所有行,左表与之匹配记录,若没有,返回null

SELECT b.id,a.name,b.address from empi_patient a RIGHT JOIN empi_patient_copy2 b on a.id = b.id

3、内连接(inner join ,其中inner可省略)

     返回两表的交集记录,返回2个表中完全符合条件的记录,结果集中表的字段内容均来自各自的表。

SELECT b.id,a.name,b.address from empi_patient a INNER JOIN empi_patient_copy2 b on a.id = b.id         --inner join SELECT b.id,a.name,b.address from empi_patient a JOIN empi_patient_copy2 b on a.id = b.id --join

4、全连接(full join)

     Mysql不支持全连接

5、交叉连接(cross join)

     没有条件限制的交叉连接,将产生连接所涉及的表的笛卡尔积

SELECT b.id,a.name,b.address from empi_patient a CROSS JOIN empi_patient_copy2 b

 加上条件,和内连接一样了

SELECT b.id,a.name,b.address from empi_patient a CROSS JOIN empi_patient_copy2 b on a.id = b.id

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/569416.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ORA-00972: identifier is too long问题解决

报错 解决: 查看你写的是否有中文 如果有中文,看是否有引号将中文引起来,用引号引起来后不报错

Alter操作(修改列名,修改列数据类型,增加列,删除列,增加列且设为主键及对默认值操作)

一、mysql (增加列,删除列,修改列;增加,删除,修改列的默认值) 增加列,删除列,修改列 1、修改列的数据类型 alter table patient modify column mood int2、修改列名 …

马蜂窝推荐系统容灾缓存服务的设计与实现

数据库突然断开连接、第三方接口迟迟不返回结果、高峰期网络发生抖动...... 当程序突发异常时,我们的应用可以告诉调用方或者用户「对不起,服务器出了点问题」;或者找到更好的方式,达到提升用户体验的目的。 一、背景 用户在马蜂窝…

Vivado Bit文件压缩

前言 Vivado编译生成的Bit文件太大,想要小一点该咋办呢?那么就需要给bit文件瘦身。 流程 直接在约束文件xdc中添加下述语句即可: set_property BITSTREAM.GENERAL.COMPRESS TRUE [current_design] 未压缩前 压缩后 根据工程不同,还…

Mac安装webpack报错gyp ERR! configure error gyp ERR! stack Error: `gyp` failed with exit code: 1解决

安装webpack ,报错提示 gyp ERR! configure error gyp ERR! stack Error: gyp failed with exit code: 1 gyp ERR! stack at ChildProcess.onCpExit (/usr/local/lib/node_modules/cnpm/node_modules/node-gyp/lib/configure.js:345:16) gyp ERR! stack a…

箭头函数用法

1.基本使用 2.参数和返回值 函数里只有一行代码 log没有返回值,所以是undefined 结果为 Hello Demo undefined 箭头函数: 在函数作为另外一个函数参数的时候,适合用箭头函数 3.箭头函数的this 返回值都是window 返回值,一…

云计算值得学习吗?云计算开发技术与应用未来工作前景

云计算技术的工作前景本人非常看好,其实已经不是我自己看好的事了,而是现在本来就已经很好很火了,在云计算的基础上又存生出大量其他产业链,归根结底还是云计算是前有技术的综合体,一会儿总结,那么工作前景…

路由的导航守卫

全局导航守卫 打印一下to,看是啥 meta 元数据(描述数据的数据) 3、路由独享的守卫 保留状态 keep-alive 保持组件不要频繁进行创建和销毁 activated deactivated 只有被保存了状态,使用了keep-alive时才起作用 和正则…

promise基础学习记录

sync 同步 async 异步 链式调用 有reject情况,直接进行到catch

Vuex状态管理方式

backend 前端 frontend 后端 getters mutations参数,有参数的情况,称为负载payload 参数不是一个的话,传对象的形式 提交,一个是通过commit,另外一个是type 这种情况下,count是一个对象&#xf…

MySQL(二)

MySQL连接管理 mysql 命令 -u 用户名-p 密码 例子: mysql -uroot -poldboy123 -h ip mysql -uroot -poldboy123 -hlocalhost -P3306 例子:mysql -uroot -poldboy123 -h 10.0.0.52 -P 3308 例子:mysql -uroot -poldboy123 -h 10.0.0.52 -P 330…

axios网络模块封装

网络测试 httpbin.org 发送普通的请求 get请求可以直接拼到URL后面 也可以将参数放到params对象中 axios发送并发请求 spread可以把值展开 数组的解构 对象的解构 axios配置信息相关 原始信息 defaults全局配置 使用全局的axios和对应的配置在进行网络请求 常见的…

Ubuntu 重置MySQL密码

1.重置密码的第一步就是跳过MySQL的密码认证过程,方法如下: vim /etc/my.cnf 在文档内搜索mysqld定位到[mysqld]文本段: /mysqld (在vim编辑状态下直接输入该命令可搜索文本内容)在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密…

sendMessage 与 obtainMessage (sendToTarget)比较

我们平时在做到多线程问题的时候可能利用Handler去传递Message,其中,经常使用的就是1、new Handler().obtainMessage().sendToTarget();2、new Handler().sendMessage(new Message());第一种是直接传递what,obj等,msg的一些数据&a…

如何在报表中实现算法的可挂接需求

在报表项目中,有些报表中部分数据的计算方法会经常改变。例如:某企业员工的实际工资是通过绩效得分计算出的,而绩效的算法可能经常变动,需要在不改动其他代码的情况下用新算法替换旧算法。一般我们都会想到用 Java 来实现计算&…

【数据结构】字符串匹配|BF算法|KMP算法|next数组的优化

字符串匹配算法是在实际工程中经常遇到的问题,也是各大公司笔试面试的常考题目,本文主要介绍BF算法(最好想到的算法,也最好实现)和KMP算法(最经典的) 一、BF算法 BF算法,即暴力(Bru…

JMeter【第五篇】关联:5种方法

前几天在Q群里看到群友发的最近10年性能测试工具使用率的统计,最近的2018年,jmeterloadrunner占了93%的使用率,说明这两个是主流,其中,jmeter的使用率逐年提升,现在已经超过了loadrunner,占了51…

树——通用树到二叉树的转换

1,已经创建了通用树结构,有必要创建另一种树结构吗? 2,简化树就直接减少结点中孩子的数量,但是这样树还能通用吗? 3,通用树结构的回顾: 1,双亲孩子表示法: 1&…

如何运行exe文件

有三种方式 第一种:找到所在文件双击运行。 第二种:在命令行里面运行所在文件夹的位置,在输入文件名。 第三种:加到环境变量里面执行 转载于:https://www.cnblogs.com/q2546/p/10931956.html

推荐几款提升效率的神器

1 数学公式神器:Mathpix Snip 作为理工科的学生或者经常用到数学的科研工作者,应该对数学公式都很头疼,不管是用LaTeX还是mathtype,都比较麻烦,要么需要频繁的鼠标点击,要么需要好的记忆力。而Mathpix Snip…