zoukankan      html  css  js  c++  java
  • 链接查询和分组查询

    一,分组查询

    1.使用GROUP BY 进行分组查询

       SELECT  列名 ,AVG(列名)AS 课程平均成绩 

       FROM 表名

       GROUP BY 列名

    2.多列分组查询

      SELECT COUNT(*)AS 人数,列名 AS 年级,列名  AS 性别 

      FROM 表名 

      GROUP BY  列名

      ORDER BY 列名

    二,使用HAVING子句进行分组筛选

           SELECT COUNT(*)AS 人数,列名 AS 年级

      FROM 表名

      GROUP BY 列名

      HAVING COUNT(*)>条件

    三,多表链接查询

    多表链接查询的分类

      1.内连接查询:是最典型,最常用的链接查询,它根据表中共同的列来进行匹配。特别是两个表存在主外键关系时通常会使用内链接查询

      2.外连接查询:至少返回一个表中的所有记录,根据匹配条件有选择性地返回另一张表的记录外连接可以是:左外连接,右外连接

    在  WHERE 子句中指定连接条件

    SELECT Studentes.Sname,Score.CourseID,Score.Score

    FROM Seudents.Score

    WHERE Students.SCode=Score.StudentID

    在FROM 子句中使用INNER JOIN ON

    SELECT S.Sname,C.CouresID,C.Score

    FROM Students AS S

    INNER JOIN Score AS C ON (S.Scode=C.StudentID)

    INNER JOIN :用来连接两个表

    ON:用来设置条件

    AS:指定表的别名

    外连接查询

    左外连接查询 :

    SELECT S.Sname,C.CourseID,C.Score

    FROM Students AS  S

    LEFT OUTER JOIN Score AS C  ON S.Sode=C.StudentID

    右外连接查询 :

    SELECT  Titlse.Title_id,Titles.Title,Publisher.Pub_name

    FROM Titles

    RIGHT OUTER JOIN   Publisher ON  Titlse.Pud_id=Publishers.Pub_id

                                                                        完! 

  • 相关阅读:
    VOA 转
    DataTable中动态的赋值 转
    哈希表 转
    利用Hook技术实现键盘监控 转
    sql 里的 order by 和 group by 的区别 转
    DES加密算法 转
    Windows的消息机制 转
    “赢在中国”点评人给80后年轻人的30个忠告 转
    ASCII码对照表 转
    以太网 转
  • 原文地址:https://www.cnblogs.com/matianpeng/p/7742721.html
Copyright © 2011-2022 走看看