zoukankan      html  css  js  c++  java
  • SQL连接查询

    一、内连接

      等值连接

    SELECT * FROM Student AS s INNER JOIN Class AS c ON c.ClassID = s.ClassID
    1    张三    19    1    1    班级1
    2    李四    18    1    1    班级1
    3    王五    16    2    2    班级2
    3    王五    16    2    2    班级2

      不等值连接

    SELECT * FROM Student AS s INNER JOIN Class AS c ON c.ClassID != s.ClassID
    1    张三    19    1    2    班级2
    1    张三    19    1    3    班级3
    1    张三    19    1    4    班级4
    1    张三    19    1    5    班级5
    1    张三    19    1    2    班级2
    2    李四    18    1    2    班级2
    2    李四    18    1    3    班级3
    2    李四    18    1    4    班级4
    2    李四    18    1    5    班级5
    2    李四    18    1    2    班级2
    3    王五    16    2    1    班级1
    3    王五    16    2    3    班级3
    3    王五    16    2    4    班级4
    3    王五    16    2    5    班级5
    4    啦啦    20    7    1    班级1
    4    啦啦    20    7    2    班级2
    4    啦啦    20    7    3    班级3
    4    啦啦    20    7    4    班级4
    4    啦啦    20    7    5    班级5
    4    啦啦    20    7    2    班级2

      自然连接

    SELECT * FROM Student AS s ,Class AS c WHERE c.ClassID=s.ClassID
    1    张三    19    1    1    班级1
    2    李四    18    1    1    班级1
    3    王五    16    2    2    班级2
    3    王五    16    2    2    班级2

    二、外连接

      左外连接

    SELECT * FROM Class AS c LEFT JOIN Student AS s ON s.ClassID = c.ClassID
    1    班级1    1    张三    19    1
    1    班级1    2    李四    18    1
    2    班级2    3    王五    16    2
    3    班级3    NULL    NULL    NULL    NULL
    4    班级4    NULL    NULL    NULL    NULL
    5    班级5    NULL    NULL    NULL    NULL
    2    班级2    3    王五    16    2

      右外连接

    SELECT * FROM Class AS c RIGHT JOIN Student AS s ON s.ClassID = c.ClassID
    1    班级1    1    张三    19    1
    1    班级1    2    李四    18    1
    2    班级2    3    王五    16    2
    2    班级2    3    王五    16    2
    NULL    NULL    4    啦啦    20    7

      全外连接

    SELECT * FROM Class AS c FULL JOIN Student AS s ON s.ClassID = c.ClassID
    1    班级1    1    张三    19    1
    1    班级1    2    李四    18    1
    2    班级2    3    王五    16    2
    3    班级3    NULL    NULL    NULL    NULL
    4    班级4    NULL    NULL    NULL    NULL
    5    班级5    NULL    NULL    NULL    NULL
    2    班级2    3    王五    16    2
    NULL    NULL    4    啦啦    20    7

    三、交叉连接

       CROSS JOIN  后面不能用ON过滤,可以用WHERE 

    SELECT * FROM Class AS c CROSS JOIN Student AS s
    1    班级1    1    张三    19    1
    2    班级2    1    张三    19    1
    3    班级3    1    张三    19    1
    4    班级4    1    张三    19    1
    5    班级5    1    张三    19    1
    2    班级2    1    张三    19    1
    1    班级1    2    李四    18    1
    2    班级2    2    李四    18    1
    3    班级3    2    李四    18    1
    4    班级4    2    李四    18    1
    5    班级5    2    李四    18    1
    2    班级2    2    李四    18    1
    1    班级1    3    王五    16    2
    2    班级2    3    王五    16    2
    3    班级3    3    王五    16    2
    4    班级4    3    王五    16    2
    5    班级5    3    王五    16    2
    2    班级2    3    王五    16    2
    1    班级1    4    啦啦    20    7
    2    班级2    4    啦啦    20    7
    3    班级3    4    啦啦    20    7
    4    班级4    4    啦啦    20    7
    5    班级5    4    啦啦    20    7
    2    班级2    4    啦啦    20    7
    View Code

     数据库脚本下载

  • 相关阅读:
    获取股票行情API 接口
    使用百度地图来展示自定义的GPS点,用pyechart 框架实例
    C 语言基础笔记
    GPS 测试汇总和python GPS 导航地图实现
    用python 来炒股二 BeautifulSoup爬虫信息新闻文章
    Python tkinter 笔记 [pack,place,grid 布局管理]
    RSS 订阅精选 2020
    用python来炒股<三> 炒股交易系统(法则)
    使用python 来实现炒股
    鼠须管输入法的配置介绍
  • 原文地址:https://www.cnblogs.com/wudequn/p/7090832.html
Copyright © 2011-2022 走看看