zoukankan      html  css  js  c++  java
  • 连接查询(等值连接,内连接,左连接,右连接,自关联)

    有3个表

    1、等值连接:连接过程中,先连接,再条件判断

        语法:select * from 表1,表2

           where 表1.列=表2.列

        例:查询学生信息及学生的成绩

                       

          

     2、内连接: 连接过程中,先判断,符合条件才会连接

        语法:select * from 表1,表2

           inner join 表2.列=表2.列

     例:查询课程信息及学生的成绩

    方式1:

    方式2:

     

     例:查询学生信息及学生的课程对应的成绩

    方式1:

    方式2:

     

     例:查询王昭君的成绩,要求显示姓名,课程号,成绩

    方式1:

    方式2:

     

     

     例:查询王昭君的数据库成绩,要求显示姓名、课程名、成绩

    方式1:

    方式2:

     

     例:查询所有的数据库成绩,要求显示姓名、课程名、成绩

    方式1:

    方式2:

     

     例:查询男生中最高成绩,要求显示姓名、课程名、成绩

    方式1:

    方式2:

     

     3、左连接:

        语法:select * from 表1,表2

           left join 表2 on 表1.列=表2.列

    例:查询所有学生的成绩,包括没有成绩的学生

     

     例:查询所有学生的成绩,不包括没有成绩的学生

     

    例:查询所有学生的成绩,包括没有成绩的学生,需要显示课程名

    例:查询所有学生的成绩,不包括没有成绩的学生,需要显示课程名

     

     4、右连接:

        语法:select * from 表1,表2

           right join 表2 on 表1.列=表2.列

    例:查询所有学生的成绩,包括没有成绩的学生

     

     例:查询所有学生的成绩,不包括没有成绩的学生

     

     例:查询所有课程的成绩,包括没有成绩的学生,包括学生信息

     

     例:查询所有课程的成绩,不包括没有成绩的学生,包括学生信息

     

     5、自关联

    举例:没有上级编号,Null

    aid跟pid进行比较,如果后面的pid==前面的aid,代表市属于省

     例:一共有多少个省 :select * from areas where pid is null;

    pid为空,说明是省,没有上级

    例:查询河南省所有城市  (areas可以查2次)

    方式1:

    查询的时候,重命名2个表格,一个是省,一个是市

     方式2:

     

    例:查询郑州市所有区县

     

     例:查询河南省的所有区县

     

  • 相关阅读:
    2星|《自金融》:公开信息汇总,缺乏深度,缺乏自有观点
    3星|《好好工作》:适合职场新手看的工作原则
    QQ2010如何开启透明效果皮肤
    如何制作迅雷7的皮肤,如何获取迅雷7皮肤的图片
    如何使用易我数据恢复向导恢复数码相机删除的图片
    如何使用射手影音寻找字幕
    云端软件平台 如何在云端分享自己的文章
    如何使用千千静听为MP3添加专辑封面和文字信息
    如何使用Ultraiso制作U盘启动盘
    如何使用SubtitleWorkshop制作字幕
  • 原文地址:https://www.cnblogs.com/xiaomengceshi/p/13632703.html
Copyright © 2011-2022 走看看