建表语句:

create table EMPLOYEE

(

EID NUMBER,

DEPTID NUMBER,

ENAME VARCHAR2(200)

)

create table DEPT

(

DEPTID NUMBER,

DEPTNAME VARCHAR2(200)

)

oracle中的连接可分为,内连接(inner join)、外连接(outer join)、全连接(full join),不光是Oracle,其他很多的数据库也都有这3种连接查询方式

一、内连接inner join,这是我们经常用的查询方式,比如select * from A inner join B on A.field1=B.field2,个人认为,这样的内连接查询与下面的查询等效,select * from A,B where A.field1=B.field2,内连接查询只能查询出匹配的记录,匹配不上的记录时无法查询出来的 。

select * from dept inner join employee on dept.deptid=employee.deptid

select * from dept,employee where dept.deptid=employee.deptid

二、外连接outer join,可进一步分为左外连接left outer join和右外连接right outer join,具体说一下左外连接和右外连接查询的特点,有2个表,部门表和职工表,一个部门下可以有多个职工,一个职工只能对应一个部门,所以部门和职工时1对多的关系,设计表如下

比如现在有需求1,要进行部门表和职工表的关联查询,并要查询出所有的部门信息,这时候,下面的左连接查询就能够查询出想要的结果,左连接就是以left join前面的表为主表,即使有些记录关联不上,主表的信息能够查询出来的

select * from dept left outer join employee on dept.deptid=employee.deptid

比如现在有需求2,要进行部门表和职工表的关联查询,并要查询出所有的职工信息,这时候,下面的右连接查询就能够查询出想要的结果,右连接就是以right join后面的表为主表,即使有些记录关联不上,主表的信息能够查询出来

select * from dept right outer join employee on dept.deptid=employee.deptid

在介绍另外的一种写法,同样达到外连接的效果,大家可以尝试使用。比如在需求1中,下面的查询语句与需求1中给出的左连接语句等效!

总之,外连接就是在关联不上的时候,把其中的部分信息查询出来

三、全连接full join,语法为full join ... on ...,全连接的查询结果是左外连接和右外连接查询结果的并集,即使一些记录关联不上,也能够把部分信息查询出来

select * from dept full join employee on dept.deptid=employee.deptid

select * from dept full join employee on 1=1

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

oracle full outer join,oracle 内连接(inner join)、外连接(outer join)、全连接(full join)...相关推荐

  1. 如何同时使用内网(本地有线连接)和外网(WLAN无线连接)

    如何同时使用内网(本地有线连接)和外网(WLAN无线连接) 进入网络连接页面 设置优先级 跃点数设置 IPV4设置 进入网络连接页面 控制面板 -> 网络和Internet -> 网络和共 ...

  2. 什么是内网和外网?什么是内网IP和外网IP?本地连接和宽带连接又有什么区别?

    今天,有很多小伙伴被何为内网外网迷糊?究竟什么是内网?什么是外网?他们又有和区别?还有什么是内网IP和外网IP?本地连接和宽带连接有什么区别?怂怂今天就来给大家科普一下吧: 问题一.何为内外网及定义诠 ...

  3. tplink连接服务器失败_管家婆财贸双全连接失败,服务器端没有找到加密狗

    管家婆财贸双全连接失败,服务器端没有找到加密狗 管家婆财贸双全找不到狗判断步骤 1.先判断电脑能否识别管家婆财贸双全加密狗我的电脑--右键--属性--硬件--设备管理器--通用串行总线控制器(或人体学 ...

  4. 内连接、外连接、全连接

    1.内连接:inner join 两张表的并集,也就是A表和B表都必须有数据才能查询出来 -- joinselect * from course c join teacher t on c.t_id ...

  5. 实例讲解内连接、左连接、右连接、交叉连接、外连接以及全连接

    目录 示例表: 1.内连接-inner: 实例1:内连接表a和表b 实例2:内连接表a和表c 实例3:内连接表a和表b,使用">"号 实例4:内连接表a和表b,使用" ...

  6. 图解SQL的连接:左连接、右连接、全连接、内连接、自然连接

    SQL的连接分为三类: 外连接(包括左连接left join.右连接right join.全连接full join) 内连接 inner join 自然连接 natural join 我们来看一个超级 ...

  7. SSH内网能连通外网连接时拒绝

    最近遇到怪事,家中的树莓派连接到路由器,路由器在设置派为固定地址,并为设置DMZ主机. 开启SSH服务,端口默认22,关闭ROOT用户连接,默认所有地址可连. 树莓派开启后经常遇到内网中PC通过内网地 ...

  8. mySQL学习记录(局域网连接/基础查询/条件查询/常见函数/窗口函数/表连接/子查询/插修删建表)

    一些基础概念 DB 数据库 存储数据的容器 DBMS 数据库管理系统 又称数据库软件.产品如mysql/oracle/db2/sqlserver SQL 结构化查询语言 是所有的DBMS都使用的一种D ...

  9. Lesson 16.1016.1116.1216.13 卷积层的参数量计算,1x1卷积核分组卷积与深度可分离卷积全连接层 nn.Sequential全局平均池化,NiN网络复现

    二 架构对参数量/计算量的影响 在自建架构的时候,除了模型效果之外,我们还需要关注模型整体的计算效率.深度学习模型天生就需要大量数据进行训练,因此每次训练中的参数量和计算量就格外关键,因此在设计卷积网 ...

  10. Pytorch 实现全连接神经网络/卷积神经网络训练MNIST数据集,并将训练好的模型在制作自己的手写图片数据集上测试

    使用教程 代码下载地址:点我下载 模型在训练过程中会自动显示训练进度,如果您的pytorch是CPU版本的,代码会自动选择CPU训练,如果有cuda,则会选择GPU训练. 项目目录说明: CNN文件夹 ...

最新文章

  1. Coding and Paper Letter(二十)
  2. 烧了微软10000张GPU,这伙人铁了心要砸大家的饭碗
  3. js for循环 ajax
  4. django时间格式化加时区控制
  5. 数据结构与算法 | 栈
  6. Linux下设置和查看环境变量
  7. POJ3991 HDU3351 UVALive4733 Seinfeld【水题】
  8. AWVS12搭建-Ubuntu
  9. 商业分析的职业路线-在数据科学世界里规划你的下一个角色
  10. 八边形类 Octagon
  11. 厦门理工学院oj1717
  12. html 语言注释,HTML 注释
  13. 获取bing壁纸php,php获取bing每日壁纸的示例
  14. 小程序页面传值的方式
  15. pc企业微信hook接口 全功能
  16. Oracle ASM的AU(Allocation units)分配
  17. TotalRecorder使用教程- 转
  18. 什么是MVCC,一文搞懂MySQL的MVCC机制
  19. 智能产品再思考,参加建筑智能设计xkool发布会有感
  20. 如何提高本地文件上传至百度云的速度_不再依赖网盘,易上手的家用备份好物,联想个人云A1评测...

热门文章

  1. 减少企业Web威胁的三条预防性措施
  2. Apple Pay和Samsung Pay可以支付BCH了
  3. BCH压力测试取得圆满成功,最大区块达21.3MB
  4. 比特币现金可能成为市值第四大最大的加密货币
  5. 比特币现金(BCH)是5月的货币之王
  6. mongooseim xmpp 服务器docker 安装试用
  7. 2017敏捷沙滩大会:完美软件,测量持续交付,以及探索未来
  8. 在Mac OS X macOS Sierra上进行VirtualBox和GNS3链接
  9. 云极知客开放平台接口调用方法(C#)
  10. LINUX系统环境下的QT编译安装