zoukankan      html  css  js  c++  java
  • 数据库SQL语言学习----左外连接,右外连接,外连接,自然连接的形象对比

    现在有两张表,一张Student

    另一张Score

     

    1、查询每个学生及其选修课程的情况;

    自然连接,Sno在Cscore中找不到就不显示,Cno在Cscore中找不到也不显示

    SELECT Student.*,Score.* 
    FROM Student,Score 
    WHERE Student.Sno=Score.Sno;

    2、查询每个学生及其选修课程的情况; (包括没有选修课程的学生);

    学生的Sno在Score中没有时,则课程Cscore补上NULL。

    左外连接,以左Student为主,不足补NULL。

    SELECT *
    FROM Student
    LEFT OUTER JOIN Score ON (Student.Sno = Score.Sno);

    3、查询每个学生及其选修课程的情况; (包括没有学生选的选修课程);

    课程的Cno在Student中没有出现过,那么,相关列的Sno补齐NULL。

    右外连接,以右Score为主,不足补NULL。

    SELECT *
    FROM Student
    RIGHT OUTER JOIN Score ON (Student.Sno = Score.Sno);

    4、查询每个学生及其选修课程的情况;(包括没有学生选的选修课程,包括没有选修课程的学生

    外连接,Sno在Cscore中找不到就补齐NULL,Cno在Cscore中找不到也补齐NULL。

    SELECT *
    FROM Student
    FULL OUTER JOIN Score ON (Student.Sno = Score.Sno);

  • 相关阅读:
    Ping
    boost::python开发环境搭建
    mingw和libcurl
    ssh远程执行命令使用明文密码
    netty源码阅读之UnpooledByteBufAllocator
    Direct ByteBuffer学习
    clions的使用
    netty中的PlatformDependent
    STL之priority_queue(优先队列)
    c++线程调用python
  • 原文地址:https://www.cnblogs.com/caiyishuai/p/10762313.html
Copyright © 2011-2022 走看看