文档详情

第4章单表查询报告.ppt

发布:2017-01-16约1.26万字共82页下载文档
文本预览下载声明
4.3 高级查询 4.3.1 聚合函数 2、SUM()函数 SUM()是求和函数,用于求出表中某个字段所有值的总和 语法格式如下所示: 使用上面的语句可以求出指定字段值的总和。 SELECT SUM(字段名) FROM 表名; 4.3 高级查询 4.3.1 聚合函数 【例4-23】求出student表中grade字段的总和,SQL语句及其执行结果如下所示: 从查询结果可以看到,所有学生grade字段的总和为652。 4.3 高级查询 4.3.1 聚合函数 3、AVG()函数 AVG()函数用于求出某个字段所有值的平均值 语法格式如下所示: 使用上面的语句可以求出指定字段所有值的平均值。 SELECT AVG(字段名) FROM student; 4.3 高级查询 4.3.1 聚合函数 【例4-24】求出student表中grade字段的平均值,SQL语句及其执行结果如下所示: 从查询结果可以看到,所有学生grade字段的平均值为81.5。 4.3 高级查询 4.3.1 聚合函数 4、MAX()函数 MAX()函数是求最大值的函数,用于求出某个字段的最大值 语法格式如下所示: 【例4-25】求出student表中所有学生grade字段的最大值,SQL语句及其执行结果如下所示: 从查询结果可以看到,所有学生grade字段的最大值为100。 SELECT MAX(grade) FROM student; 4.3 高级查询 4.3.1 聚合函数 5、MIN()函数 MIN()函数是求最小值的函数,用于求出某个字段的最小值。 语法格式如下所示: 【例4-26】求出student表中grade字段的最小值,SQL语句如下所示: 从查询结果可以看到,所有学生grade字段的最小值为40。 SELECT MIN(grade) FROM student; 4.3 高级查询 4.3.2 对查询结果排序 为了使查询结果满足用户的要求,可以使用ORDER BY对查询结果进行排序。 语法格式如下所示: 参数ASC表示按照升序进行排序,DESC表示按照降序进行排序。默认情况下,按照ASC方式进行排序。 SELECT 字段名1,字段名2,…… FROM 表名 ORDER BY 字段名1 [ASC | DESC],字段名2 [ASC | DESC]…… 4.3 高级查询 4.3.2 对查询结果排序 【例4-27】查出student表中的所有记录,并按照grade字段进行排序,SQL语句及其执行结果如下所示: 从查询结果可以看到,返回的记录按照ORDER BY指定的字段grade进行排序,并且默认是按升序排列。 4.3 高级查询 4.3.2 对查询结果排序 【例4-28】查出student表中的所有记录,使用参数ASC按照grade字段升序方式排列,SQL语句及其执行结果如下所示: 从查询结果可以看到,在ORDER BY中使用了ASC关键字,返回结果和例4-27查询的结果一致。 4.3 高级查询 4.3.2 对查询结果排序 【例4-29】查出student表中的所有记录,使用参数DESC按照grade字段降序方式排列,SQL语句及其执行结果如下所示: 从查询结果可以看到,在ORDER BY中使用了DESC关键字,返回的记录按照grade字段的降序进行排列。 4.3 高级查询 4.3.2 对查询结果排序 【例4-30】查询student表中的所有记录,按照gender字段的升序和grade字段的降序进行排列,SQL语句及其执行结果如下所示: 4.3 高级查询 4.3.3 分组查询 在MySQL中,可以使用GROUP BY按某个字段或者多个字段中的值进行分组,字段中值相同的为一组。 语法格式如下所示: 指定的字段名1、字段名2等是对查询结果分组的依据。HAVING关键字指定条件表达式对分组后的内容进行过滤。需要特别注意的是,GROUP BY一般和聚合函数一起使用,如果查询的字段出现在GROUP BY后,却没有没有包含在聚合函数中,该字段显示的是分组后的第一条记录的值,这样有可能会导致查询结果不符合我们的预期。 4.3 高级查询 4.3.3 分组查询 1、单独使用GROUP BY分组 单独使用group by关键字,查询的是每个分组中的一条记录。 【例4-31】查询student表中的记录,按照gender字段值进行分组,SQL语句及其执行结果如下所示: 4.3 高级查询 4.3.3 分组查询 2、GROUP BY和聚合函数一起使用 GROUP BY和聚合函数一起使用,可以统计出某个或者某些字段在一个分组中的最大值、最小值、平均值等
显示全部
相似文档