zoukankan      html  css  js  c++  java
  • sql表连接 —— join

    一、内连接 —— INNER JOIN

    内连接是最常见的一种连接,只连接匹配的行。

    表1:

    表2:

    执行查询:

    select StudentId as 学生编号,StudentName as 姓名,Gender as 性别,Likes as 爱好,ClassName as 所在班级 from Students a
    inner join Class b
    on a.ClassID = b.ClassId

    效果:

     二、外连接 —— LEFT JOIN

    返回左表的全部行和右表满足ON条件的行,如果左表的行在右表中没有匹配,那么这一行右表中对应数据用NULL代替。

    还是上面的俩个表,查询语句更改为:

    select StudentId as 学生编号,StudentName as 姓名,Gender as 性别,Likes as 爱好,ClassName as 所在班级 from Students a
    left join Class b
    on a.ClassID = b.ClassId

    效果:

     三、外连接 —— RIGHT JOIN

     返回右表的全部行和左表满足ON条件的行,如果右表的行在左表中没有匹配,那么这一行左表中对应数据用NULL代替。

     还是上面的俩个表,查询语句更改为:

    select StudentId as 学生编号,StudentName as 姓名,Gender as 性别,Likes as 爱好,ClassName as 所在班级 from Students a
    right join Class b
    on a.ClassID = b.ClassId

    效果:

    四、外连接 —— FULL OUTER JOIN

    会从左表 和右表 那里返回所有的行。如果其中一个表的数据行在另一个表中没有匹配的行,那么对面的数据用NULL代替

    还是上面的俩个表,查询语句更改为:

    select StudentId as 学生编号,StudentName as 姓名,Gender as 性别,Likes as 爱好,ClassName as 所在班级 from Students a
    full outer join Class b
    on a.ClassID = b.ClassId

    效果:

  • 相关阅读:
    第13篇-通过InterpreterCodelet存储机器指令片段
    第12篇-认识CodeletMark
    第11篇-认识Stub与StubQueue
    第10篇-初始化模板表
    第9篇-字节码指令的定义
    Java虚拟机漫漫学习路,我终于悟了
    Unity真机连接profiler
    提取图片中文字方法
    登录锁定个人收藏代码
    java判断密码是否为复杂类型(同时包含大小写和数字)
  • 原文地址:https://www.cnblogs.com/xulinjun/p/11956417.html
Copyright © 2011-2022 走看看