欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

oracle中基本的分组函数

程序员文章站 2024-02-27 23:03:45
...

分组函数:分组函数作用于一组数据,并对一组数据返回一个值。

组函数类型:AVG,COUNT,MAX,MIN,STDDEV,SUM

1.可以对数值型数据使用AVG 和 SUM 函数。

SELECT AVG(salary), MAX(salary),
              MIN(salary), SUM(salary)
FROM   employees
WHERE  job_id LIKE '%REP%';

2.可以对任意数据类型的数据使用 MIN 和 MAX 函数。

SELECT MIN(hire_date), MAX(hire_date)
FROM	  employees;

3.COUNT(*) 返回表中记录总数

SELECT COUNT(*)
FROM	  employees
WHERE  department_id = 50;

4.COUNT(expr) 返回 expr不为空的记录总数。

SELECT COUNT(commission_pct)
FROM   employees
WHERE  department_id = 80;

5.COUNT(DISTINCTexpr) 返回 expr非空且不重复的记录总数

SELECT COUNT(DISTINCT department_id)
FROM   employees;

6.组函数忽略空值

SELECT AVG(commission_pct)
FROM   employees;

7.NVL函数使分组函数无法忽略空值

SELECT AVG(NVL(commission_pct, 0))
FROM   employees;

8.group by

在SELECT 列表中所有未包含在组函数中的列都应该包含在 GROUP BY 子句中。

②包含在 GROUP BY 子句中的列不必包含在SELECT 列表中

③多个列分组

SELECT   department_id dept_id, job_id, SUM(salary)
FROM     employees
GROUP BY department_id, job_id ;

9.Having子句

SELECT   department_id, MAX(salary)
FROM     employees
GROUP BY department_id
HAVING   MAX(salary)>10000 ;

10.嵌套函数

SELECT   MAX(AVG(salary))
FROM     employees
GROUP BY department_id;
AVG:求平均值
COUNT:统计查询结果个数
MAX:求最大值
MIN:求最小值
STDDEV:求标准差
SUM:求和
相关标签: 数据库

上一篇: Oracle基本类型函数

下一篇: