博客
关于我
mysql 聚合函数
阅读量:797 次
发布时间:2023-04-03

本文共 1452 字,大约阅读时间需要 4 分钟。

聚合函数(组函数)概述与应用

聚合函数,又称组函数,主要用于对数据库中的数据进行统计和计算,通常与分组操作结合使用,用于对分组数据进行分析。以下将从基础到应用详细介绍聚合函数的使用方法。

聚合函数的应用

1. 获取非空记录的总数

要获取数据库中非空记录的总数,可以使用 COUNT() 函数。以下是两种常见用法:

  • 返回非 NULL 数据的总行数:
SELECT COUNT(height) FROM students;
  • 返回总行数,包含 NULL 值记录:
SELECT COUNT(*) FROM students;

2. 计算最大值与最小值

最大值和最小值的计算可以通过 MAX()MIN() 函数实现。以下是示例:

  • 查询女生编号的最大值:
SELECT MAX(id) FROM students WHERE gender = 2;
  • 查询男生身高的最小值:
SELECT MIN(height) FROM students WHERE gender = 1;

3. 求和操作

SUM() 函数用于对某个字段的所有值求和。以下是示例:

  • 计算男生总身高:
SELECT SUM(height) FROM students WHERE gender = 1;

4. 计算平均值

AVG() 函数用于计算平均值,但需要注意的是,它默认会忽略 NULL 值。如果希望包含 NULL 值进行计算,需使用 IFNULL() 函数替换 NULL 值。以下是示例:

  • 计算男生平均身高(不包含 NULL 值):
SELECT AVG(height) FROM students WHERE gender = 1;
  • 计算男生平均身高(包含 NULL 值,替换为 0):
SELECT AVG(IFNULL(height, 0)) FROM students WHERE gender = 1;

常用聚合函数总结

以下是常见聚合函数及其作用:

函数名称 描述
AVG() 计算字段的平均值。
BIT_AND() 返回字段的按位与结果。
BIT_OR() 返回字段的按位或结果。
BIT_XOR() 返回字段的按位异或结果。
COUNT() 返回满足条件的行数。
COUNT(DISTINCT) 返回不同值的数量。
GROUP_CONCAT() 将分组后的字段进行拼接。
JSON_ARRAYAGG() 将结果集转换为 JSON 数组。
JSON_OBJECTAGG() 将结果集转换为 JSON 对象。
MAX() 返回字段的最大值。
MIN() 返回字段的最小值。
STD() 返回字段的标准差。
STDDEV() 返回字段的标准差。
STDDEV_POP() 返回字段的总体标准差。
STDDEV_SAMP() 返回字段的样本标准差。
SUM() 返回字段的总和。
VAR_POP() 返回字段的总体方差。
VAR_SAMP() 返回字段的样本方差。
VARIANCE() 返回字段的总体方差。

注意事项

  • 默认忽略 NULL:聚合函数默认会忽略 NULL 值。如果需要包含 NULL 值参与计算,需使用 IFNULL() 对 NULL 替换。

  • 分组操作:在使用聚合函数时,通常会配合 GROUP BY 使用,用于对数据进行分组后再进行聚合计算。

  • 数据类型:不同数据库系统对聚合函数的支持可能存在差异,需根据具体数据库类型选择合适的函数。

  • 通过以上方法,开发者可以根据需求灵活运用聚合函数对数据进行统计分析和计算。

    转载地址:http://vzrfk.baihongyu.com/

    你可能感兴趣的文章
    oracle基础 管理索引
    查看>>
    oracle复习(一)
    查看>>
    ORACLE多表关联UPDATE 语句
    查看>>
    Oracle多表查询与数据更新
    查看>>
    oracle如何修改单个用户密码永不过期
    查看>>
    oracle字符集
    查看>>
    oracle存储参数(storage子句)含义及设置技巧
    查看>>
    Oracle学习
    查看>>
    oracle学习笔记(4)
    查看>>
    Oracle学习第二天---Profile的使用
    查看>>
    Oracle学习第五课
    查看>>
    Oracle安装、Navicat for Oracle、JDBCl连接、获取表结构
    查看>>
    Oracle安装与远程连接配置(附Oracle安装包)
    查看>>
    ORACLE客户端连接
    查看>>
    oracle常用SQL——创建用户、表空间、授权(12C)
    查看>>
    Oracle常用函数整理
    查看>>
    oracle常见操作
    查看>>
    Oracle数据库异常--- oracle_10g_登录em后,提示java.lang.Exception_Exception_in_sending_Request__null或Connection
    查看>>
    oracle数据库异常---SP2-1503: 无法初始化 Oracle 调用界面 SP2-1503: 无法初始化 Oracle 问题的解决办法
    查看>>
    oracle数据库核心笔记
    查看>>