在数据库(尤其是 SQL)以及数据分析中,**聚合函数(Aggregate Functions)**通常可以按“功能”和“使用方式”两个角度来分类。下面以常见 SQL 聚合函数为主进行说明:
用于对数值列进行统计计算:
COUNT():计数(行数或非空值数)SUM():求和AVG():平均值MIN():最小值MAX():最大值示例:
SELECT COUNT(*), AVG(salary), SUM(salary)
FROM employee;
用于描述数据的分布特征:
STDDEV() / STDDEV_POP() / STDDEV_SAMP():标准差VARIANCE() / VAR_POP() / VAR_SAMP():方差PERCENTILE_CONT() / PERCENTILE_DISC():百分位数(部分数据库支持)将多行字符串合并为一行:
STRING_AGG()(PostgreSQL、SQL Server)GROUP_CONCAT()(MySQL)LISTAGG()(Oracle)示例:
SELECT department, STRING_AGG(name, ',')
FROM employee
GROUP BY department;
结合条件进行聚合:
COUNT(DISTINCT col):去重计数SUM(CASE WHEN ... THEN ... END):条件求和MAX(CASE WHEN ... THEN ... END):条件最大BOOL_AND()(PostgreSQL)BOOL_OR()(PostgreSQL)EVERY()(标准 SQL)与 GROUP BY 配合使用:
SELECT dept, AVG(salary)
FROM emp
GROUP BY dept;
不与 GROUP BY 合并行,而是保留原行:
SELECT name, salary, AVG(salary) OVER (PARTITION BY dept)
FROM emp;
COUNT(DISTINCT user_id)
聚合函数一般可分为:
如果你指的是某种具体数据库(MySQL / Oracle / PostgreSQL)或编程语言中的聚合(如 Pandas),可以告诉我,我可以更针对性地说明。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。