• left join、right join、inner join的区别


    left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 
    right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录
    inner join(等值连接) 只返回两个表中联结字段相等的行

    [TEST@ORA1] SQL>select * from a;
    
    编号 姓名
    ---- ----------
    1000 张三
    2000 李四
    3000 王五
    
    [TEST@ORA1] SQL>select * from b;
    
    编号 商品
    ---- ----------
    1000 电视机
    2000 录像机
    4000 自行车
    
    [TEST@ORA1] SQL>set null 空值--这里为了显示方面我把NULL定义成了[空值]
    
    [TEST@ORA1] SQL>select a.*,b.* from a inner join b on a.编号=b.编号;
    
    编号 姓名       编号 商品
    ---- ---------- ---- ----------
    1000 张三       1000 电视机
    2000 李四       2000 录像机
    
    [TEST@ORA1] SQL>select a.*,b.* from a left join b on a.编号=b.编号;
    
    编号 姓名       编号 商品
    ---- ---------- ---- ----------
    1000 张三       1000 电视机
    2000 李四       2000 录像机
    3000 王五       空值 空值
    
    [TEST@ORA1] SQL>select a.*,b.* from a right join b on a.编号=b.编号;
    
    编号 姓名       编号 商品
    ---- ---------- ---- ----------
    1000 张三       1000 电视机
    2000 李四       2000 录像机
    空值 空值       4000 自行车
    
    [TEST@ORA1] SQL>select a.*,b.* from a full join b on a.编号=b.编号;
    
    编号 姓名       编号 商品
    ---- ---------- ---- ----------
    1000 张三       1000 电视机
    2000 李四       2000 录像机
    3000 王五       空值 空值
    空值 空值       4000 自行车
  • 相关阅读:
    第221题:最大正方形
    第238题:除自身以外数组的乘积
    简单易懂的拓扑排序
    第207题 课程表
    第198题:打家劫舍
    第四章 初始化与清理
    【笔记】jquery判断两个日期之间相差多少天
    【笔记】spring定时器时间配置实例
    【笔记】jquery加减乘除及科学计算法处理
    string 日期相加和相减
  • 原文地址:https://www.cnblogs.com/kingfly/p/4161937.html
Copyright © 2020-2023  润新知