zoukankan      html  css  js  c++  java
  • 联合查询时需注意

    用inner join 联合查询的时候需要注意,如果一个表中一个连接外表的字段为空,这条记录不会被查询出来,只会返回两个连接表中字段相等的记录。下面为inner join;left join;right join 的区别

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

    举例说明:

    [TEST@ORA1] SQL>select * from a;

    编号 姓名
    ---- ----------
    1000 张三
    2000 李四
    3000 王五

    [TEST@ORA1] SQL>select * from b;

    编号 商品
    ---- ----------
    1000 电视机
    2000 录像机
    4000 自行车

    [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 自行车

  • 相关阅读:
    用DllImport引用的外部DLL文件如何通过clickonce发布
    关于Response.Redirect 端口不一致的跳转
    c# 使用递归 循环遍历导航树结构 并解析
    .net判断用户使用的是移动设备还是PC
    Lucene.net 从创建索引到搜索的代码范例
    C#敏感关键词过滤代码
    对SQL Server SQL语句进行优化的10个原则
    SQL Server表分区
    asp.net 真正实现完全跨域单点登录
    ASP.NET性能优化小结
  • 原文地址:https://www.cnblogs.com/zlytu/p/2381474.html
Copyright © 2011-2022 走看看