九、Oracleラーニングノート:集約関数



一、集約関数(複数行関数、グループ関数)
需要:従業員表の最高月給を表示し、各部門の平均給与を照会し、要求されたデータは表に直接現れず、計算が必要で、複数の記録を統計し、1つの記録として表示する必要がある--すべての集約関数はnullを無視する
(1)max()、min():データセットの最大値、最小値の表示
--  :                
  select max(sal),min(sal) from emp;
--  :        ,    
  select max((sal+nvl(comm,0))*12),min(comm) from emp;

(2)sum():各グループのデータの中の和を求める
--  :          ,   
  select sum(sal),sum(comm) from emp; 
--  :             
  select sum(sal)/14 from emp;
  select avg(sal) from emp;
--  :           
  select sum(comm)/16 from emp;
  select avg(comm) from emp;

(3)avg()関数は通常空値処理,すなわちavg(nvl(comm,0))を行う.
--  :           
  select avg((sal+nvl(comm,0))*12) from emp;

(4)count():各グループのデータのレコード数を統計する
--  :           
  select count(sal),count(comm) from emp;
--  :         
  select count(ename) from emp;
--   :‘*’        ,        
  select count(*) from emp;