• sql外连接


    http://hi.baidu.com/69hwj/blog/item/a63eaadd8ca126ea76c638a5.html

     

    在讲外连接之前,先举例介绍内连接,也就是一般的相等连接。

    select * from a, b where a.id = b.id;

    对于外连接,Oracle中可以使用“(+)”来表示,9i可以使用LEFT/RIGHT/FULL OUTER JOIN,下面将配合实例一一介绍。

    1. LEFT OUTER JOIN:左外关联

    SELECT e.last_name, e.department_id, d.department_name
                     FROM employees e
                     LEFT OUTER JOIN departments d
                     ON (e.department_id = d.department_id);

    等价于

    SELECT e.last_name, e.department_id, d.department_name
                     FROM employees e, departments d
                     WHERE e.department_id=d.department_id(+);

    结果为:所有员工及对应部门的记录,包括没有对应部门编号department_id的员工记录。

    因该理解为:选择所有的员工记录,加上"department_name"字段,如果没有该字段的,试用Null来填补,目的是为了查看所有员工的信息.

    2. RIGHT OUTER JOIN:右外关联

    SELECT e.last_name, e.department_id, d.department_name
                     FROM employees e
                     RIGHT OUTER JOIN departments d
                     ON (e.department_id = d.department_id);

    等价于

    SELECT e.last_name, e.department_id, d.department_name
                     FROM employees e, departments d
                     WHERE e.department_id(+)=d.department_id;

    结果为:所有员工及对应部门的记录,包括没有任何员工的部门记录。

    3. FULL OUTER JOIN:全外关联

    SELECT e.last_name, e.department_id, d.department_name
                     FROM employees e
                     FULL OUTER JOIN departments d
                     ON (e.department_id = d.department_id);

    结果为:所有员工及对应部门的记录,包括没有对应部门编号department_id的员工记录和没有任何员工的部门记录。

    ==============

    left主表全选   right从表全选

    (+)在从表主键上,表示left

    full outer join 没有简化模式

  • 相关阅读:
    代码质量管理平台SonarQube的安装、配置与使用
    IntelliJ IDEA优秀插件(编程通用)
    Helpers.parallel_bulk in Python not working?
    把mysql的数据导出成txt
    python从数据库获取全量数据的方法
    ylbtech-LanguageSamples-ExplicitInterface(显示接口)
    ylbtech-LanguageSamples-Events(事件)
    ylbtech-LanguageSamples-Delegates(委托)
    ylbtech-LanguageSamples-ConditionalMethods(条件方法)
    ylbtech-LanguageSamples-CommandLine(命令行参数)
  • 原文地址:https://www.cnblogs.com/mabaishui/p/1787642.html
Copyright © 2020-2023  润新知