Oracle 中 where 和 on 的区别

 1.Oracle 中 where 和 on 的区别
     on:会先根据on后面的条件进行筛选,条件为真时返回该行,由于on的优先级高于left join,所以left join关键字会把左表中没有匹配的所有行也都返回,然后生成临时表返回,执行优先级高于left join。
     where:对与行的筛选是在left join之后的,也就是生成临时表之后才会对临时表进行筛选,执行优先级低于left join。

1)、除表连接条件外,不包含emp表条件和where 条件

SELECT A.*, B.* FROM DEPT A LEFT JOIN EMP B ON a.deptno = b.deptno; 

2)、除表连接条件外,包含emp表条件

SELECT A.*, B.* FROM DEPT A LEFT JOIN EMP B ON a.deptno = b.deptno AND B.MGR IS NOT NULL;

3)、除表连接条件外,包含where条件

SELECT A.*, B.* FROM DEPT A LEFT JOIN EMP B ON a.deptno = b.deptno WHERE B.MGR IS NOT NULL;

2. 内连接和外连接的区别

内连接(inner join):内连接是通过匹配两个表之间的共同列,返回满足连接条件的行。只有在连接条件匹配的情况下,才会返回结果。内连接只返回两个表中共同匹配的行,不包含任何不匹配的行。
外连接(outer join):外连接分为左外连接(Left Outer Join)、右外连接(Right Outer Join)和全外连接(Full Outer Join)三种类型。左外连接返回左表中的所有行,以及与右表匹配的行;右外连接返回右表中的所有行,以及与左表匹配的行;全外连接返回左表和右表中的所有行,不管是否匹配。

3.Oracle执行SQL流程图

相关推荐

  1. OracleNull‘‘区别

    2024-04-07 05:02:01       37 阅读
  2. OracleTimeStampDate区别

    2024-04-07 05:02:01       24 阅读
  3. 【数据库】PostgreSQLDISTINCT ONDISTINCT区别

    2024-04-07 05:02:01       36 阅读
  4. Oracleblobclob区别例子

    2024-04-07 05:02:01       14 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-07 05:02:01       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-07 05:02:01       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-07 05:02:01       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-07 05:02:01       18 阅读

热门阅读

  1. 我的创作纪念日

    2024-04-07 05:02:01       16 阅读
  2. MySQL里面慢查询优化指南:从定位到优化

    2024-04-07 05:02:01       17 阅读
  3. PostCSS安装以及使用详解

    2024-04-07 05:02:01       22 阅读
  4. HART报文详解

    2024-04-07 05:02:01       16 阅读
  5. Redis的String详细介绍

    2024-04-07 05:02:01       20 阅读
  6. 【算法】排硬币

    2024-04-07 05:02:01       19 阅读
  7. 互联网面经

    2024-04-07 05:02:01       21 阅读
  8. 从石膏像到真人:素描的进步之路

    2024-04-07 05:02:01       25 阅读
  9. 【leetcode】零钱兑换

    2024-04-07 05:02:01       20 阅读
  10. vue3 实现 input 输入框聚焦

    2024-04-07 05:02:01       22 阅读