zoukankan      html  css  js  c++  java
  • SQL中表的连接

    在SQL Server中表之间的连接分为自然连接,内连接,外连接。

    自然连接与内连接类似,唯一的区别是,内连接不会去掉重复的列,而自然连接会自动去掉重复的列,例如这里做一个简单的例子。

    表SAge(cName,iAge),                         表SSex(cName,bSex)

         

    1、先进行内连接  

    1 select * from ssex  inner join sage on ssex.cname=sage.cname

        运行的结果为:

    2、进行自然连接(不知道为什么我的数据库版本运行不了natural join  版本问题吧)

        select * from ssex  natural join sage

       预期的结果应该如图:

    3、进行外连接,外连接分为左外连接(left [outer] join),右外连接(right [outer] join)和全外连接(full [outer] join)   tips:这里中括号[]里的内容可写可不写。

    (1)A left join B 是将A的内容全列出来,满足条件的B的内容列出来,没有的地方为NULL

    select * from ssex  left join sage on ssex.cname=sage.cname
    或者
    select * from ssex  left outer join sage on ssex.cname=sage.cname

    运行结果均为:

    (2)A right join B 是将B的内容全列出来,满足条件的A的内容列出来,没有的地方为NULL

    select * from ssex  right join sage on ssex.cname=sage.cname
    或者:
    select * from ssex  right outer join sage on ssex.cname=sage.cname

    运行结果均为:

    (3)A full join B 是将A,B的内容都列出来,满足条件的合成一行不满足条件的用NULL代替,看例子:

    select * from ssex  full outer join sage on ssex.cname=sage.cname
    或者
    select * from ssex  full  join sage on ssex.cname=sage.cname

    运行结果为:

    以上为所有的内容,不知道这样对概念有没有清晰一点呢。

  • 相关阅读:
    vscode的settings.json最新配置
    RSA和AES混合使用的原理
    自己手动配置脚手架webpack完整详细版(一)
    MySQL下载安装教程完整版
    解决这三个问题的方法:abandon后重提代码、给sourcetree重加工程、ideal上查找历史版本代码、
    synchronized关键字,Lock对象,阻塞队列问题
    volatile关键字
    Python-根据成绩分析是否继续深造
    R语言-美国枪杀案分析
    R语言-ggplot初级
  • 原文地址:https://www.cnblogs.com/huang1990/p/3023708.html
Copyright © 2011-2022 走看看