SQL 聚合函数

前言

SQL中的聚合函数是对一组值执行计算,并返回单个值的函数。

常用的聚合函数有:

函数 作用
AVG() 求平均值
MAX() 求最大值
MIN() 求最小值
SUM() 求和
COUNT() 计数

AVG()

求数值列的平均值。

具体计算过程:其通过对表中行数计数并计算特定数值列的列值之和,求得该列的平均值。

语法:

sql 复制代码
SELECT AVG(`column_name`) 
FROM `table_name`;

当参数 column_name 列中的数据均为空时,结果会返回 NULL。


MAX()

返回指定列中的最大值。

语法:

sql 复制代码
SELECT MAX(`column_name`) 
FROM `table_name`;

当参数 column_name 列中的数据均为空时,结果会返回 NULL。


MIN()

返回指定列中的最小值。

语法

sql 复制代码
SELECT MIN(`column_name`) 
FROM `table_name`;

当参数 column_name 列中的数据均为空时,结果会返回 NULL。


SUM()

统计数值列的总数并返回其值。

语法

sql 复制代码
SELECT SUM(`column_name`) 
FROM `table_name`;

当参数 column_name 列中的数据均为空时,结果会返回 NULL。


COUNT()

COUNT() 函数用于计数,可利用其确定表中行的数目或者符合特定条件的行的数目。当COUNT() 中的参数不同时,其的用途也是有明显的不同的,主要可分为以下三种情况:

  • COUNT(column_name): 用于计算表中指定列的非空值的数量。
  • COUNT(*):用于计算表中所有行的数量,包括空值和非空值。
  • COUNT(DISTINCT column_name) :用于计算表中指定列的不同值的数量。

❗ 注意: COUNT(column_name) 与 COUNT(*) 的区别

  • COUNT(column_name) 中,如果 column_name 字段中的值为 NULL,则计数不会增加,而如果字段值为空字符串"",则字段值会加 1

  • COUNT(*) 中,除非整个记录全为 NULL,则计数不会增加,如果存在某一个记录不为 NULL,或者为空字符串"",计数值都会加 1。

相关推荐
IvorySQL1 分钟前
PostgreSQL 日报|备用服务器 FSM 数据不一致(9 月 2 日)
服务器·数据库·postgresql
zcmodeltech24 分钟前
风力发电沙盘模型控制系统设计与灯光联动实现方案——基于STM32与Modbus RTU,服务范围覆盖全国的多场景风力发电沙盘模型定制
网络·数据库·stm32·单片机·嵌入式硬件·能源
程序员黎剑32 分钟前
MySQL-JOIN优化-NLJ与BNL的区别与实战
数据库·mysql
Java小白笔记33 分钟前
MyBatis XML Mapper 标签与 CRUD 原理实战
xml·数据库·mybatis
JMchen1231 小时前
【Android 性能优化实战 60 讲】03 Perfetto 现代分析利器:SQL 查询 Trace 数据,微秒级定位函数 CPU 耗时
android·sql·性能优化·实战·源码分析·perfetto·启动优化
JavaPub-rodert1 小时前
一个后台系统如何同时支持 MySQL、PostgreSQL、SQLite、SQL Server?从 ShiyuAdmin 的 GORM 多数据库适配说起
数据库·mysql·postgresql
小翰生信1 小时前
转录组下游分析全流程:DESeq2 差异分析、GO/KEGG 富集与 GSEA 实战
数据库·矩阵·golang
2603_966437261 小时前
拷贝中断文件丢失,电脑资料抢救实操方案
数据库·电脑
harmony&1 小时前
MySQL 数据库从入门到实战:原理、安装与 SQL 详解
数据库·sql·mysql
程序员贺加贝1 小时前
报表大-IN-优化-一条-product_profile-超大-IN-SQL-背后的报表任务治理
java·spring boot·sql·性能优化·架构