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。

相关推荐
ClouGence18 小时前
Oracle 数据同步为什么会出现数据不一致?长事务是常被忽略的原因
数据库·后端·oracle
飞将21 小时前
从零实现数据库(2)——HashIndex + IndexManager
数据库
Nturmoils2 天前
订单列表慢查询,先看 WHERE、ORDER BY 和 LIMIT
数据库
渣波2 天前
拒绝 SQL 焦虑!手把手带你用 NestJS + Prisma + DTO 写出“防弹”级后端代码
javascript·数据库·后端
倔强的石头_3 天前
KingbaseES 新版MySQL 兼容版体验:旧版迁移 + 功能实测
数据库
zzzzzz3104 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
倔强的石头_6 天前
《Kingbase护城河》——数据库存储空间全景探测与精细化瘦身实战
数据库
云技纵横6 天前
唯一索引 INSERT 死锁实战:5 秒复现交叉插入的 S 锁循环等待
sql·mysql
冬奇Lab6 天前
每日一个开源项目(第134篇):Zvec - 阿里开源的嵌入式向量数据库,向量搜索界的 SQLite
数据库·人工智能·llm
ClouGence7 天前
Oracle CDC 架构优化:从主库直连到 DataGuard 备库同步
数据库·后端·oracle