2019独角兽企业重金招聘Python工程师标准>>>

一、前提知识

  • oracle 表连接方式有

    1. 内连接 [INNER] JOIN
    2. 左外连接 LEFT [OUTER] JOIN
    3. 右外连接 RIGHT [OUTER] JOIN
    4. 全外连接 FULL [OUTER] JOIN
    5. 交叉连接 CROSS JOIN

二、用"+"表示左右连接

用(+)来实现, 这个+号可以这样来理解: + 表示补充,即哪个表有加号,这个表就是匹配表。如果加号写在左表,右表就是全部显示,所以是右连接。

使用(+)的注意事项

    1. (+)操作符只能出现在WHERE子句中,并且不能与OUTER JOIN语法同时使用。2. 当使用(+)操作符执行外连接时,如果在WHERE子句中包含多个条件,则必须在所有条件都包含(+)操作符。3. (+)操作符只适用于列,而不能用在表达式上。4. (+)操作符不能与OR和IN操作符一起使用。5. (+)操作符只能用于实现左外连接和右外连接,而不能用于实现完全外连接。

例子

  • 左连接:
  Select * from t_A a,t_B b where a.id=b.id(+);
  • 右连接:
  Select * from t_A a,t_B b where a.id(+)=b.id;

三、用","表示的连接

之前一直","表示连接,但是不知道具体的意义,所以今天我专门归纳了一下

1. 起因

SQL 89标准只支持内部连接与交叉连接,因此只有隐式连接这种表达方式,就是","号这种方式;SQL 92标准增加了对外部连接的支持,这才有了 join关键字。

2. 用法

  • 不带where条件,连接的几个表是在做交叉连接
  • 用where条件,连接的几个表是在做内连接
  • oracle扩展后,可以参考(二)做左连接和右连接

转载于:https://my.oschina.net/MyoldTime/blog/2050165

oracle 的“+”和“,”连接表的方式相关推荐

  1. 多對多、單向一對多做ORM時最好用基于连接表的方式

    作者:xyzround ORM中有兩種關聯關係(多對多和單向一對多),需要使用基于连接表的映射方式才能使關係數據庫表的外鍵關聯顯得更規範. 以下例子用JPA註解的映射來實現這兩種關係: 單向一對多: ...

  2. Oracle 优化器_表连接

    概述 在写SQL的时候,有时候涉及到的不仅只有一个表,这个时候,就需要表连接了.Oracle优化器处理SQL语句时,根据SQL语句,确定表的连接顺序(谁是驱动表,谁是被驱动表及 哪个表先和哪个表做链接 ...

  3. Oracle数据库远程连接方式之一:不需要安装客户端软件方法!

    连接Oracle数据库,通过远程的方式,有很多种.这里主要是跟大家说明一个简单的方法:不需要安装软件的方法! 具体内容: 1.在Oracle官网上下载程序. 下载地址:http://www.oracl ...

  4. 转:ORACLE的JDBC连接方式:OCI和THIN

    oracle的jdbc连接方式:oci和thin oci和thin是Oracle提供的两套Java访问Oracle数据库方式. thin是一种瘦客户端的连接方式,即采用这种连接方式不需要安装oracl ...

  5. oracle表访问方式

    0.参考文献: Index Full Scan && Index Range Scan oracle-index unique scan 与index range scan等的区别 i ...

  6. oracle中的多表连接

    2019独角兽企业重金招聘Python工程师标准>>> 简单连接: 简单连接仅仅是通过select子句和from子句来连接多个表,其查询结果是一个通过笛卡尔积所生成的表.在实际需求中 ...

  7. Oracle 清空表的方式

    Oracle 清空表的方式: 方式一:delete from  表名 方式二:truncate table 表名 清空方式的区别: 1.delete是dml操作:truncate是ddl操作,ddl隐 ...

  8. 只安装和配置instantclient,用plsql developer,navicat for oracle,sqlplus连接oracle数据库 ....

    环境配置: 1.到oracle官网下载instantclient basic包,解压缩到E:\oracle\instantclient_11_2: 2.设置环境变量 NLS_lANG=SIMPLIFI ...

  9. oracle数据库迁移部分表,oracle 数据库之间 表数据的 迁移

    主要是 需要将 正式环境的数据库 和测试环境的数据库的 表 数据同步一下,方便测试. 这样的效果, 可以使用 数据库的 备份 , exp imp 等其他的方式, 可是这样的方式, 需要 在 电脑里面 ...

最新文章

  1. C++的STL栈实现获取栈中最小元素的成员
  2. 洛谷 P1064 金明的预算方案
  3. Spring boot日志使用
  4. docker 镜像_Docker镜像分层
  5. AAAI 2019 《LiveBot: Generating Live Video Comments Based on Visual and Textual Contexts》论文笔记
  6. inverse和Cascade详解
  7. 读入一组文本行,打印最长的文本行
  8. 量子计算机具有天热的,量子绝热计算
  9. 使用Axis2方式发布webService实例说明
  10. mysql8.0.19解压版_MySQL8.0解压版配置步骤及具体流程
  11. 台式计算机读取不了移动硬盘,电脑识别不了硬盘的原因
  12. 商城商品的知识图谱构建
  13. IDEA代码规范插件P3C+代码注释模板
  14. 关于activity转场动画makeSceneTransitionAnimation没效果的问题的解决办法
  15. 这是一封摘抄的情书有点长你读不完也没关系
  16. QT6程序全屏和隐藏鼠标指针笔记
  17. 数据仓库模型设计及实施方法
  18. React Native 仿 ofo 共享单车 App
  19. rOG魔霸新锐2022和魔霸6区别 哪个好
  20. js 判断是域名还是ip并获取当前url中指定部分

热门文章

  1. transformer 解码_碎碎念:Transformer的解码加速
  2. html没有内容怎么爬,Url没有在网页中返回正确的html(对于我的Java爬虫)
  3. Javascript找出所有没有重复的字符(优化)
  4. Android FAE工程师要求,使用AndroidStudio进行系统应用开发
  5. UART协议概述与实现
  6. 为什么matlab用不成了,matlab2008 安装了不能用为什么?
  7. 公司服务器文档管理制度,文件服务器管理制度
  8. 报表下拉框多选查询及一般在sql中添加查询条件
  9. SQLServer 2008 r2下载及安装
  10. vb listview扁平表头的列表框