美文网首页
sql 学习笔记之 left /right/ inner joi

sql 学习笔记之 left /right/ inner joi

作者: e156012376cf | 来源:发表于2018-07-02 10:39 被阅读22次

    left join right join inner join 的区别。

    left join 与right join 类似 结果显示的是左(left)表或者右(right)表的全部以及对应的join 表中字段符合连接要求的内容 如果连接表中没有符合条件的则显示null。

    inner join 则是只显示符合连接条件的所有内容。

    从建表开始看一下区别

    先创建一个学生表
    create table student (id int primary key identity(1,1) ,name varchar(50) ,sex varchar(50))

    插入几条数据
    insert into student (name,sex) values ('张三','男')
    insert into student (name,sex) values ('李清照,'男')
    insert into student (name,sex) values ('苏东坡,'男')
    insert into student (name,sex) values ('辛弃疾,'男')
    insert into student (name,sex) values ('晏几道,'男')

    a1.png

    再创建一个成绩表

    create table score (id int primary key identity(1,1),name varchar(50),score int)

    插入几条数据

    insert into score(name,score) values ('张三',90)
    insert into score(name,score) values ('李清照,98)
    insert into score(name,score) values ('苏东坡,99)
    insert into score(name,score) values ('辛弃疾,99)
    insert into score (id,name,sex) values (12,'晏殊',97)

    a2.png

    表建好以后开始测试left join

    select * from student a left join score b on a.id= b.id

    a3.png

    可以看到查询结果是student 表的全部以及 score表的符合条件的部分

    再看看right join

    select * from student a right join score b on a.id= b.id

    a4.png

    可以看到查询结果是score 表的全部以及 student 表的符合条件的部分

    最后看下inner join

    select * from student a inner join score b on a.id= b.id

    a5.png

    可以看出 inner join 的查询结果是 仅显示符合条件的部分 三者的区别一目了然

    相关文章

      网友评论

          本文标题:sql 学习笔记之 left /right/ inner joi

          本文链接:https://www.haomeiwen.com/subject/ebmkuftx.html