zoukankan      html  css  js  c++  java
  • 数据库外连接和内连接详解

    SQL语句中有关的连接主要有: 外连接、内链接、全连接。

    内连接:

    INNER  JOIN

    内连接为 两个表中必须都同时满足条件

    内连接,即最常见的等值连接

    自然连接和等值连接的区别: 等值连接会将等值条件列出两次,而自然连接只会保留一个表中的等值条件,自然连接不用指明连接条件。

    外连接:

    连接结果不仅包含符合连接条件的行同时也包含自身不符合条件的行。包括左外连接、右外连接和全外连接。

    左外连接:

    左边表数据行全部保留,右边表保留符合连接条件的行

    LEFT JOIN 关键字会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行。

    右外连接:

    右边表数据行全部保留,左边表保留符合连接条件的行

    RIGHT JOIN 关键字会右表 (table_name2) 那里返回所有的行,即使在左表 (table_name1) 中没有匹配的行。

    全外连接:

    左外连接 union 右外连接

     

     右外连接 right outer join 或者 right join

    右外连接是在等值连接的基础上加上被连接表的不匹配数据


    RIGHT   JOIN   或   RIGHT   OUTER   JOIN。  
    右向外联接是左向外联接的反向联接。将返回右表的所有行。如果右表的某行在左表中没有匹配行,则将为左表返回空值。

    全外连接 full outer join 或者 full join

    全外连接是在等值连接的基础上将左表和右表的未匹配数据都加上

    只要其中某个表存在匹配,FULL JOIN 关键字就会返回行。

    全外连接的等价写法,对同一表先做左连接,然后右连接
     

    交叉连接:cross join :结果等于两个表行数的乘积。

    select * from table1 , table2 等价于 select * from table1 cross join table2.


  • 相关阅读:
    eclipse中编译调试skynet
    饭否Android端更新流程分析
    ThinkPHP Logic层
    Skynet框架(1)
    ThinkPHP Mongo驱动update方法支持upsert参数
    [转载]yum与apt命令比较
    chkconfig在ubuntu里用什么命令替代
    通过aptget下载下来到/var/cache/apt/archives里的东西能删除吗?
    mysql远程访问的bindaddress设置
    对MySQL性能影响关系紧密的五大配置参数
  • 原文地址:https://www.cnblogs.com/yongpan666/p/3657993.html
Copyright © 2011-2022 走看看