ORACLE 函数介绍
第三篇 著名函数之聚合函数 2007.8.16
注:N 表示数字型,C 表示字符型,D 表示日期型,[]表示内中参数可被忽略,fmt 表示格式。
聚合函数可被用于 select,order by 以及 having 子句中。其运算可以基于 group by 的结果,也可以直接对所
有记录进行运算。当然,这种类型语句相信大家平常也用的比较多,概念性的就不多介绍了,有一点需要注意
的是,除了 count 和 grouping 之后,其它的统计运算均会忽略值为 null 的列。
为更好演示此类函数应用,我们需要首先构建一个测试表,如下:
create table tmp1(col varchar2(10),value number(5));
insert into tmp1 values ('test1',60);
insert into tmp1 values ('test2',120);
insert into tmp1 values ('test3',460);
insert into tmp1 values ('test4',225);
insert into tmp1 values ('test5',119);
insert into tmp1 values ('test6',350);
insert into tmp1 values ('test7',23);
insert into tmp1 values ('test1',120);
insert into tmp1 values ('test3',69);
insert into tmp1 values ('test4',89);
insert into tmp1 values ('test6',145);
后续章节示例中也均以此表做例。
注意,多数聚合函数都支持 DISTINCT 子句(distinct 是什么?过滤记录集中重复记录用的),如果不指定则
默认针对所有计录,举个最简单的例子:select count(col),count(distinct col) from tmp1。
本类函数中部分函数同时也属于分析函数。其做为分析函数时的具体用法将会在后面章节介绍,本节不做
描述。
1、AVG([distinct|all]n) 求取记录集中的平均值。
例如:SELECT col, avg(value) FROM tmp1 GROUP BY col ORDER BY col
2、COUNT([distinct|all]col) 该函数返回查询涉及到的记录行数。
例如:
SELECT col, count(0) FROM tmp1 GROUP BY col ORDER BY col;
SELECT count(col), count(distinct col) FROM tmp1;
[三思笔记]-Oracle 函数介绍--著名及非著名函数 http://www.5ienet.com/ QQ:5454589 君三思