Oracle里面的外连中where和on之后and有啥区别

发布时间:2020-08-09 17:03:37

来源:ITPUB博客

阅读:62

作者:修辞立其诚

1、表做关联的时候有些条件写在where中,有些写在on之后关联条件的and中。那么有什么区别呢。

2、我们指导,表关联一般分为两种:内联和外联。

3、我们先来看内联。

4、准备两个表做连接。表A:test_tb_stid;表B:test_tb_stscore;

5、表A数据如下图:

6、表B数据如下图:

7、用红色字段stid作为关联条件

8、内联,先把过滤条件放在and后:

select a.*,b.*

from test_tb_stid a

inner join test_tb_stscore b

on a.stid = b.stid

and a.stid = 2

9、结果,发现只出现一条:

10、把过滤条件放到where

11、发现内联的时候,这个过滤条件放on之后的and和where没有区别。

12、我们再看一下外联。

发现虽然加了过滤条件,但是a表还是全量的。如果不加这个a.stid=1,应该会匹配出两条出来,如下图:

说明外联的话:1、主表总是全量的。2、on之后的and条件只对结果内容产生影响,不对结果量产生影响。

13、过滤条件加到where上

直接就是对结果集产生影响了。

oracle中on和where的区别,Oracle里面的外连中where和on之后and有啥区别相关推荐

  1. oracle 入参含多个值,oracle几个检查点参数的含义与区别

    关于FAST_START_IO_START.LOG_CHECKPOINT_INTERVAL.LOG_CHECKPOINT_TIMEOUT这三者的区别, 首先明确几个概念: 1.Data block 是 ...

  2. oracle中触发器只能用于表吗,Oracle触发器的分类和使用

    Oracle触发器的分类和使用 摘要:在Oracle中,触发器是一种特殊的存储过程,它在发生某种数据库事件时由Oracle 系统自动触发.触发器通常用于加强数据的完整性约束和业务规则等,对于表来说,触 ...

  3. 达梦数据库导入oracle数据_达梦数据库和oracle数据的一些区别

    近期我在考达梦的dca发现有一些和oracle不同的地方,由于我是oracleDBA在维护达梦数据库的时候有需要注意的地方,现在分享一下2个数据库的一些区别. 1.登陆的区别 oracle:如果sys ...

  4. oracle startup作用,【学习笔记】Oracle打补丁后startup migrate、startup upgrade区别分析...

    天萃荷净 分享一篇Oracle数据库在打完补丁后startup migrate.startup upgrade区别分析 1.为什么要使用Startup Migrate STARTUP MIGRATE ...

  5. virtualbox中安装xp系统、安装oracle数据库到虚拟机的xp系统中、主机连接oracle、备份xp系统、oracle数据库的一些基本概念(学习oracle数据库的准备工作)-day01

    目录 1. 安装virtualbox 1.1 什么是virtualbox 1.2 安装virtualbox 1.3 virtualbox跑xp系统 1.4 让虚拟机的xp与外面的系统网络互通 2. 安 ...

  6. oracle中怎么给列起别名,oracle中给表和列起别名

    SELECT xxmc,sname asxsxm,sex,phone,address jzdzFROMstudent sLEFT JOIN xxjbxx x ON x.sid = s.sid 此处的s ...

  7. oracle数据存储过程 中的循环 for 拼接字符串,oracle存储过程中使用字符串拼接

    1.使用拼接符号"||" v_sql := 'SELECT * FROM UserInfo WHERE ISDELETED = 0 AND ACCOUNT =''' || vAcc ...

  8. oracle中set怎么用,sqlplus命令格式以及sqlplus中set的用法与解释-Oracle

    sqlplus命令格式以及sqlplus中set的用法与解释 [oracle@oracle02 username]$ sqlplus –help SQL*Plus: Release 9.2.0.4.0 ...

  9. oracle设置缓存大小设置多少,【数据库类※从V$DB_CACHE_ADVICE中设置数据缓冲大小※】...

    [数据库类※从V$DB_CACHE_ADVICE中设置数据缓冲大小※]     Oracle 9i引入了一个新的途径来预测数据缓冲cache中附加数据缓存的所带来的好处的多少.V$DB_CACHE_A ...

  10. 程序运行过程中遇到“ORA-03114: not connected to ORACLE”的问题解决

    程序运行过程中遇到"ORA-03114: not connected to ORACLE"的问题解决 参考文章: (1)程序运行过程中遇到"ORA-03114: not ...

最新文章

  1. StringBuilder StringBuffer
  2. 记录工作中第一次解决bug的小事
  3. Android 仿王者荣耀广告弹窗,android仿王者荣耀对战资料之能力图
  4. ax.spines——matplotlib坐标轴设置
  5. 基于JAVA+SpringBoot+Vue+Mybatis+MYSQL的排课管理系统
  6. java的多态代码例子_java 多态实例代码
  7. openlayers 加载高德底图
  8. 2021-09-15频繁项集的评估标准
  9. java 企业微信对接_Java对接企业微信
  10. android swf 播放器 源码,Android 9.0 flash播放器播放swf源码讲解
  11. 电信跨域跨系统业务实践
  12. 让画面契合音乐节拍——BeatEdit
  13. 恢复手机HTML文件,easyrecovery恢复手机误删文件方法
  14. CCKS-2017行业知识图谱构建与应用-上篇
  15. 电脑计算机安全模式在哪,电脑怎么进入安全模式? 进入安全模式详细教程
  16. FTP虚拟用户(转发)
  17. 轻量级日志分析PLG平台Loki安装部署及使用(promtail+loki+Grafana)
  18. 消防水带箱市场现状及未来发展趋势
  19. 抖音API分析,视频批量下载-初级
  20. 小记--------hbase数据库java API 常用方法及案例

热门文章

  1. Openstack实验之yum源配置
  2. XMLSpy使用流程
  3. tsp问题动态规划python_TSP问题——动态规划
  4. win7美化_桌面美化,无敌的dock软件,桌面便捷工具、桌面整理、更新鼠标美化...
  5. 在JMP中拆分数据集有烦恼?这些实用妙招试试看!
  6. bp神经网络算法原理 Levenberg Marquardt
  7. linux导入表dmp文件命令,linux下导入.dmp文件
  8. 使用计算机传真,使用计算机发送和接收传真
  9. snmp使用默认团体名_CactiEZ 中文版snmp默认团体名
  10. CTFhub—弱密码(web)