MySQL 聚合函数排序

目录
  • MySQL 结果排序-- 聚集函数
    • 环境
    • 查询结果排序
    • 查询的分组与汇总
    • 查一下 学生们平均年龄
    • 查一下总人数是多少
    • 查一下每个年龄有多少人
    • 查出最大年龄
  • 总结

MySQL 结果排序-- 聚集函数

环境

CREATE TABLE `student`  (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '学号',
  `student_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '学生姓名',
  `sex` varchar(5) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '性别\r\n',
  `age` int(11) NULL DEFAULT NULL COMMENT '年龄',
  `result` double(10, 0) NULL DEFAULT NULL COMMENT '成绩',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
INSERT INTO `student` VALUES (1, '小王', '男', 18, 90);
INSERT INTO `student` VALUES (2, '小李', '女', 19, 80);
INSERT INTO `student` VALUES (3, '小明', '男', 20, 85);
INSERT INTO `student` VALUES (4, '小张', '男', 21, 87);

查询结果排序

平常应用比较多的就是筛选热度产品、或者微博热搜。

语法格式:

SELECT 字段名1… FROM 表名 ORDER BY 字段名1 [ASC | DESC ] ,字段名2 [ASC | DESC ]…;

字段名1 、2 是对查询结果排序的依据。 ASC 表示升序 DESC表示降序。 默认是ASC。

举个爪子:

SELECT * FROM  student ORDER BY  age DESC ;

当后面跟两个排序规则的时候,是第一个字段名相同的时候,才按照第二个字段名排序规则排序。

剩下自己摸索。

思考:

查找 age 降序 student_name 升序 该怎么写?

查询的分组与汇总

聚集函数

函数 作用
AVG() 返回某列的平均值 (平均值)
COUNT() 返回某列的行数 (统计)
MAX() 返回某列的最大值 (最大值)
MIN() 返回某列的最小值 (最小值)
SUM() 返回某列值之和(求和)

查一下 学生们平均年龄

select AVG(age) as "年龄"  from student;

查一下总人数是多少

select count(id) as "总人数" from student;

查一下每个年龄有多少人

select age, count(id) as "总人数" from student GROUP BY age;

查出最大年龄

select MAX(age) as "最大年龄" from student ;

小于一样。

查询出男女各多少人

select sex ,count(*) AS "人数" from student GROUP BY sex;
#GROUP BY 是将结果按照 后面跟的字段名分组

查询成绩的总分的是多少

select sum(result) as "成绩总分" FROM student;

总结

本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注我们的更多内容!

(0)

相关推荐

  • MySQL 分组查询和聚合函数

    概述 相信我们经常会遇到这样的场景:想要了解双十一天猫购买化妆品的人员中平均消费额度是多少(这可能有利于对商品价格区间的定位):或者不同年龄段的化妆品消费占比是多少(这可能有助于对商品备货量的预估). 这个时候就要用到分组查询,分组查询的目的是为了把数据分成多个逻辑组(购买化妆品的人员是一个组,不同年龄段购买化妆品的人员也是组),并对每个组进行聚合计算的过程:. 分组查询的语法格式如下: select cname, group_fun,... from tname [where conditio

  • MySQL使用聚合函数进行单表查询

    聚合函数 作用于一组数据,对那组数据返回一个值 count :统计结果记录多少条数, max:统计最大值 min:统计最小值 sum:计算求和 avg: 计算平均值 注意,分组函数 group by.如果要对 分组后 的数据进行筛选,那么必须使用 having 关键字,条件写在 having 后面: where:先过滤已有的数据,在分组,在聚合函数计算: having:过滤分组之后的数据.插入我们需要练习的表city 表 CREATE TABLE `city` ( `id` INT AUTO_I

  • MySql 中聚合函数增加条件表达式的方法

    Mysql 与聚合函数在一起时候where条件和having条件的过滤时机 where 在聚合之前过滤 当一个查询包含了聚合函数及where条件,像这样的情况 select max(cid) from t where t.id<999 这时候会先进行过滤,然后再聚合.先过滤出ID<999的记录,再查找最大的cid返回. having 在聚合之后过滤 having在分组的时候会使用,对分组结果进行过滤,通常里面包含聚合函数. SELECT ip,MAX(id) FROM app GROUP BY

  • Mysql 聚合函数嵌套使用操作

    目的:Mysql 聚合函数嵌套使用 聚合函数不可以直接嵌套使用,比如: max(count(*)) 但是可以嵌套子查询使用 eg: 注:后面那个 as 必须要写 select max(total) from ( select count(*) as total from blog group by btype) as aa; 补充知识:mysql中MAX()函数和count()函数的技巧使用 1.max()函数 在考虑提高数据库io的情况下,可以创建索引 ===>create index 索引名

  • MySQL查询排序与查询聚合函数用法分析

    本文实例讲述了MySQL查询排序与查询聚合函数用法.分享给大家供大家参考,具体如下: 排序 为了方便查看数据,可以对数据进行排序 语法: select * from 表名 order by 列1 asc|desc [,列2 asc|desc,...] 说明 将行数据按照列1进行排序,如果某些行列1的值相同时,则按照列2排序,以此类推 默认按照列值从小到大排列(asc) asc从小到大排列,即升序 desc从大到小排序,即降序 例1:查询未删除男生信息,按学号降序 select * from st

  • MySQL 聚合函数排序

    目录 MySQL 结果排序-- 聚集函数 环境 查询结果排序 查询的分组与汇总 查一下 学生们平均年龄 查一下总人数是多少 查一下每个年龄有多少人 查出最大年龄 总结 MySQL 结果排序-- 聚集函数 环境 CREATE TABLE `student` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '学号', `student_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_c

  • Mysql聚合函数的使用介绍

    目录 前言 什么是聚合函数 SUM 函数 count max与min sum avg 总结 前言 聚合函数用来对表中的数据进行统计和计算.users表结构如下: 什么是聚合函数 聚合函数是用来做简单的数据统计的,比如说统计一下 “员工表” 中的平均工龄是多少年啊,员工表中一共有多少条记录等等… 这些都需要使用到聚合函数. 聚合函数也被称为 “汇总函数” ,在数据的查询分析中,应用的十分广泛.可以帮助我们实现对数据的求和.求最大值.求最小值.求平均值等等. 如果不指定统计的范围,那么聚合函数统计的

  • MySQL中聚合函数count的使用和性能优化技巧

    本文的环境是Windows 10,MySQL版本是5.7.12-log 一. 基本使用 count的基本作用是有两个: 统计某个列的数据的数量: 统计结果集的行数: 用来获取满足条件的数据的数量.但是其中有一些与使用中印象不同的情况,比如当count作用一列.多列.以及使用*来表达整行产生的效果是不同的. 示例表如下: CREATE TABLE `NewTable` ( `id` int(11) NULL DEFAULT NULL , `name` varchar(30) NULL DEFAUL

  • 深入了解MySQL中聚合函数的使用

    目录 什么是聚合函数 SUM 函数 MAX 函数 MIN 函数 AVG 函数 COUNT 函数 聚合函数综合小练习 聚合函数综合练习 -1 聚合函数综合练习 -2 今天的章节我们将要来学习一下 “聚合函数” :首先我们需要学习聚合函数对数据进行统计分析,比如说求最大值.最小值.平均值之类的场景.但是单纯的使用聚合函数,只能做全表范围的统计分析.如果想要把记录分组分别统计,需要使用 “GROUP BY” 和 “HAVING” 这样的分组子句了.关于分组查询的应用,将在下一章节为大家进行讲解.当前章

  • MySQL常用聚合函数详解

    一.AVG AVG(col) 返回指定列的平均值 二.COUNT COUNT(col) 返回指定列中非NULL值的个数 三.MIN/MAX MIN(col):返回指定列的最小值 MAX(col):返回指定列的最大值 四.SUM SUM(col) 返回指定列的所有值之和 五.GROUP_CONCAT GROUP_CONCAT([DISTINCT] expr [,expr ...]              [ORDER BY {unsigned_integer | col_name | expr}

  • SQL学习笔记四 聚合函数、排序方法

    聚合函数 count,max,min,avg,sum... select count (*) from T_Employee select Max(FSalary) from T_Employee 排序 ASC升序 DESC降序 select * from T_Employee order by Fage 先按年龄降序排列.如果年龄相同,则按薪水升序排列 select * from T_Employee order by FAge DESC,FSalary ASC order by 要放在 wh

随机推荐