• Oracle_关联查询


    1、

    等值连接(Equijoin)、非等值连接(Non-Equijoin)、外连接(Outer join):-->左外连接-->右外连接、自连接(Self join)

    交叉连接(Cross join)、自然连接(Natural join)、使用Using子句建立连接、使用on子句建立连接、外连接(Outer join):-->左外连接-->右外连接-->全外连接

    2、

    等值连接(Equijoin)

     select empno,ename,sal,emp.deptno,dname from emp,dept where emp.deptno = dept.deptno;

     可使用AND操作符增加查询条件

    • 使用表别名可以简化查询
    • 使用表名(表别名)前缀可提高查询效率
    • 为了连接n个表,至少需要n-1个连接条件

     非等值连接(Non-Equijoin)

    外连接(Outer join):使用外连接可以看到参与连接的某一方不满足连接条件的记录,外连接运算符为(+),传统的外连接分为左外连接和右外连接两种。

    自连接(Self join)

    交叉连接(Cross join):Cross join 产生了一个笛卡尔集,其效果等同于再两个表进行连接时未使用where子句限定连接条件

    自然连接(Natural join):Natural join基于两个表中的全部同名列建立连接

    • 从两个表中选出同名列的值均对应相等的所有行
    • 如果两个表中的同名列的所有数据类型不同,则出错
    • 不允许在参照列上使用表名或者别名作为前缀
    • Using子句:如果不希望参照被连接表的所有同名列进行等值连接,自然连接将无法满足要求,可以在连接时使用USING子句来设置用于等值连接的列(参照列)名

    • On子句:如果要参照非同名的列进行等值连接,或想设置任意的连接条件,可以使用On子句

    内连接(Inner join):内连接只返回满足连接条件的数据

    左外连接(Left Outer Join):两个表在连接过程中除返回满足连接条件的行为外,还返回左表中不满足条件的行为,这种连接称为左外连接.

    右外连接(Right Outer Join):两个表在连接过程中除返回满足连接条件的行为外,还返回右表中不满足条件的行为,这种连接称为右外连接.

  • 相关阅读:
    P1087 FBI树 二叉树
    回顾测试和测试方法
    Postman
    执行用例的思路、批量执行(可选)、定时任务
    unittest平台分析与建表:
    HTMLTestRunner源码
    665. Non-decreasing Array
    661. Image Smoother
    643. Maximum Average Subarray I
    628. Maximum Product of Three Numbers
  • 原文地址:https://www.cnblogs.com/caroline4lc/p/3888178.html
Copyright © 2020-2023  润新知