美文网首页
MySQL链接和多表查询小结

MySQL链接和多表查询小结

作者: MichaelDing | 来源:发表于2020-04-08 15:59 被阅读0次

    基本知识点:

    左连接:如果左表的某行在右表没有对应的行,则右表部分为空 left join on

    右连接:如果右表的某行在左表没有对应的行,则左表部分为空 right join on

    完全连接:如果左表的某行在右表没有对应的行,则右表部分为空,如果右表的某行在左表没有对应的行,则左表部分为空,full join

    内连接:从左表和右表中找出满足条件的结果集 inner join on

    交叉连接:从左表和右表中找出满足笛卡尔积的所有结果集 cross join

    union连接:将左表和右表的查询结果进行合并,如果左表和右表含有相同重复的使用union all

    多表查询(多对多):表一Student:学生表:sno ,sname 表二:课程表Course cno,cname 表三:学生表和课程表的中间表:Student_Course:ID,sno,cno,含有学生表的课程表的主键,(注意:一个学生可以选修多个课程,一个课程可以被多个学生选修),用左连接查询学生表中学生对应的所有课程;

    select s.sname,c.cname from Student_Course as sc left join Student as s on sc.sno= s.sno left join Course as c on c.cno = sc.cno
    附录:学生表:Student


    DC834C276F866A3CF924F5B6D68CAD5C.png

    课程表:Course


    44065445E81C35FAAC50204B16956412.png
    学生课程表:Student_Course
    4A5BDA303D3B99C72F9DCE43A8359598.png
    sql执行结果:
    21F68EE39B3BAB95344BCC246EF0C539.png

    相关文章

      网友评论

          本文标题:MySQL链接和多表查询小结

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