我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Mysql的分组查询和统计计算

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Mysql的分组查询和统计计算

1.聚合函数

聚合函数实现数据的统计计算,用于计算表中的数据,返回单个计算结果。聚合函数包括COUNT、SUM、AVG、MAX、MIN等函数,下面分别介绍。

(1)COUNT函数

COUNT函数用于计算组中满足条件的行数或总行数。

语法格式:

COUNT ( { [ ALL | DISTINCT ] <表达式> } | * )

其中,ALL表示对所有值进行计算,ALL为默认值,DISTINCT指去掉重复值,COUNT函数用于计算时忽略NULL值。

【例6.12】求学生的总人数。

mysql> SELECT COUNT(*) AS 总人数

    -> FROM student;

该语句采用COUNT(*)计算总行数,总人数与总行数一致。

查询结果:

+----------+

| 总人数  |

+----------+

|        6     |

+----------+

1 row in set (0.09 sec)

【例6.13】查询通信专业学生的总人数。

mysql> SELECT COUNT(*) AS 总人数

    -> FROM student

    -> WHERE speciality='通信';

该语句采用COUNT(*)计算总人数,并用WHERE子句指定的条件进行限定为201836。

查询结果:

+---------+

| 总人数  |

+---------+

|          3 |

+---------+

1 row in set (0.01 sec)

SUM和AVG函数

SUM函数用于求出一组数据的总和,AVG函数用于求出一组数据的平均值,这两个函数只能针对数值类型的数据。

语法格式:

SUM / AVG ( [ ALL | DISTINCT ] <表达式> )

其中,ALL表示对所有值进行计算,ALL为默认值,DISTINCT指去掉重复值,SUM / AVG函数用于计算时忽略NULL值。

MAX和MIN函数

MAX函数用于求出一组数据的最大值,MIN函数用于求出一组数据的最小值,这两个函数都可以适用于任意类型数据。

语法格式:

MAX / MIN ( [ ALL | DISTINCT ] <表达式> )

其中,ALL表示对所有值进行计算,ALL为默认值,DISTINCT指去掉重复值,MAX / MIN函数用于计算时忽略NULL值。

GROUP BY子句

GROUP BY子句用于指定需要分组的列。

语法格式:

GROUP BY [ ALL ] <分组表达式> [,…n]

其中,分组表达式通常包含字段名,ALL显示所有分组。

HAVING子句

HAVING子句用于对分组按指定条件进一步进行筛选,过滤出满足指定条件的分组。

语法格式:

[ HAVING <条件表达式> ]

其中,条件表达式为筛选条件,可以使用聚合函数。

当WHERE子句、GROUP BY子句、HAVING子句、ORDER BY子句在一个SELECT语句中时,执行顺序如下:

(1)执行WHERE子句,在表中选择行。

(2)执行GROUP BY子句,对选取行进行分组。

(3)执行聚合函数。

(4)执行HAVING子句,筛选满足条件的分组。

(5)执行ORDER BY子句,进行排序。

注意: HAVING子句要放在GROUP BY子句的后面,ORDERBY子句放在HAVING子句后面。

来源地址:https://blog.csdn.net/m0_67696981/article/details/130791473

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Mysql的分组查询和统计计算

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

MySQL 中的查询统计

为执行的查询收集的重要统计信息,包括时间、临时表、索引、联接等,都收集在“查询统计 SQL 编辑器结果”选项卡中(请参阅以下两图)。要求启用查询,并收集性能架构统计信息。performance_schema 已启用语句检测。SQL
2023-10-22

mysql 根据date做年,月,日分组统计查询

使用 YEAR(), MONTH(), DAY() 来获取年月日SELECT YEAR(application_date) as years, count(1) FROM patent GROUP BY YEAR(application_date) ORDER
mysql 根据date做年,月,日分组统计查询
2015-08-27

MySQL如何计算查询结果的平均值、总和等统计信息

在MySQL中,可以使用聚合函数来计算查询结果的平均值、总和等统计信息。以下是一些常用的聚合函数:AVG:计算某列的平均值SELECT AVG(column_name) FROM table_name;SUM:计算某列的总和SELECT S
MySQL如何计算查询结果的平均值、总和等统计信息
2024-03-06

MySQL 子查询和分组查询

概述子查询是SQL查询中的重要一块,是我们基于多表之间进行数据聚合和判断的一种手段,使得我们的处理复杂数据更加的便捷,这一节我们主要来了解一下子查询。 先做一下数据准备,这边建立三张表:班级、学生、毕业成绩表,用于后面的操作:drop da
2022-05-12

MYSQL数据库查询按日期分组统计详细代码

本文提供了MySQL按日期分组统计的详细代码示例,用于分析时间序列数据并识别趋势。该代码支持按年、月、日分组,并返回每组的汇总值,包括数量、总和、平均值、最小值和最大值。文章通过一个示例演示了如何使用该代码来统计订单数据。
MYSQL数据库查询按日期分组统计详细代码
2024-04-02

按照小时分组-计算每个小时的查询量

select to_char(query_time, "yyyy/mm/dd hh24") || "点" as query_time,count(1) as data_numfrom cpq_resultinfo t where t.query_time>=
按照小时分组-计算每个小时的查询量
2020-12-21

MySql的回顾三:流程控制函数/统计函数/分组查询

路漫漫其修远兮,吾将上下而求索,又到了周末,我继续带各位看官学习回顾Mysql知识。上次说到了流程控制函数,那就从流程控制函数来继续学习吧!#五.流程控制函数#1.if函数:if else的效果IF(条件表达式,成立返回1,不成立返回2)#与Java三元运算相
MySql的回顾三:流程控制函数/统计函数/分组查询
2021-11-26

分库数据如何查询统计

分库后的计算不能直接使用SQL;异构库 SQL 函数不尽相同;JAVA 硬编码实施难度大;即使借助透明网关访问远程数据库,分库性能优化也是头疼问题。 一般常规办法: 方法1:java硬编码 简单的跨库count运算,Java部分代码大概要写成这样:
分库数据如何查询统计
2017-06-06

分库数据怎么查询统计

本篇文章给大家分享的是有关分库数据怎么查询统计,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。分库后的计算不能直接使用SQL;异构库 SQL 函数不尽相同;JAVA 硬编码实施难
2023-06-03

编程热搜

目录