oracle打散分组函数,oracle分组函数
分組函數(shù)
一 介紹
1.分組函數(shù)作用于一組數(shù)據,并對一組數(shù)據返回一個值
2.組函數(shù)類型:
avg 平均值
count
max
min
stddev
sum
二 代碼
1.工資最高的:SQL> select max(sal) from emp;
工資最低的:SQL> select min(sal) from emp;
平均工資:SQL> select avg(sal) from emp;
工資總數(shù):SQL> select sum(sal) from emp;
記錄總數(shù):SQL> select count(emptno) from emp; 返回的是不為空的記錄
SQL> select count(distinct emptno) from emp;
返回的是非空且不重復的記錄總數(shù) distinct是去掉重復的
也可以寫為:
SQL> select min(sal),max(sal),min(sal) from emp;
結果為:
MIN(SAL) MAX(SAL) MIN(SAL)
---------- ---------- ----------
800 5000 800
注:(1)可以對數(shù)值型數(shù)據使用AVG 和 SUM 函數(shù)。
(2)可以對任意數(shù)據類型的數(shù)據使用 MIN 和 MAX 函數(shù)。
也可以對日期使用
SQL> select min(hiredate) from emp;
SQL> select max(hiredate) from emp;
2.分組數(shù)據
group by子句使用
例子:查詢出employees中各部門的平均工資
SQL> select department_id,avg(salary) from employees group by department_id;
包含在 GROUP BY 子句中的列不必包含在SELECT 列表中,所以可以寫為:
SQL> select avg(salary) from employees group by department_id;
可以進行多列的分組:
SQL> select department_id,job_id,sum(salary) from employees group by department_id,job_id;
注:(1)不能在 where 子句中使用組函數(shù)(注意)。
(2)可以在 HAVING 子句中使用組函數(shù)。
3.過濾分組 having子句
例子:部門最高工資比 1000高的部門
SQL> select department_id,max(salary) from employees group by department_id having max(salary)>1000;
每一個部門下有很多員工,通過對部門分組,把是一個部門員工分好在當前部門下,計算出最高的工資對比
4.嵌套組函數(shù)
例子:顯示平均工資的最大值
SQL> select max(avg(salary)) from employees group by department_id;
總結
以上是生活随笔為你收集整理的oracle打散分组函数,oracle分组函数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PHP微信公众号开发插件,基于Think
- 下一篇: 电影叶问里演得咏春拳是真实的么?真的这么