oracle聚合函数有哪些?

1、AVG(DISTINCT|ALL)

ALL表示对所有的值求平均值,DISTINCT只对不同的值求平均值。

SELECTAVG(SAL)FROMSCOTT.EMP;

SELECTAVG(DISTINCTSAL)FROMSCOTT.EMP;

2、MAX(DISTINCT|ALL)

求最大值,ALL表示对所有的值求最大值,DISTINCT表示对不同的值求最大值,相同的只取一次。

(加不加查询结果一致,不知DISTINCT有什么用途,不同于AVG等聚合函数)

SELECTMAX(DISTINCTSAL)FROMSCOTT.EMP;

SELECTMAX(SAL)FROMSCOTT.EMP

3、MIN(DISTINCT|ALL)

求最小值,ALL表示对所有的值求最小值,DISTINCT表示对不同的值求最小值,相同的只取一次。

SELECTMIN(SAL)FROMSCOTT.EMP;

SELECTMIN(DISTINCTSAL)FROMSCOTT.EMP;

4、STDDEV(distinct|all)

求标准差,ALL表示对所有的值求标准差,DISTINCT表示只对不同的值求标准差。

SELECTSTDDEV(SAL)FROMSCOTT.EMP;

SELECTSTDDEV(DISTINCTSAL)FROMSCOTT.EMP;

5、VARIANCE(DISTINCT|ALL)

求协方差,ALL表示对所有的值求协方差,DISTINCT表示只对不同的值求协方差。

SELECTVARIANCE(SAL)FROMSCOTT.EMP;

SELECTVARIANCE(DISTINCTSAL)FROMSCOTT.EMP;

6、SUM(DISTINCT|ALL)

求和,ALL表示对所有值求和,DISTINCT表示只对不同值求和(相同值只取一次)。

SELECTSUM(SAL)FROMSCOTT.EMP;

SELECTSUM(DISTINCTSAL)FROMSCOTT.EMP;

7、COUNT(DISTINCT|ALL)

求记录、数据个数,ALL对所有记录,数组做统计,DISTINCT只对不同值统计(相同值只取一次)。

SELECTCOUNT(SAL)FROMSCOTT.EMP;

SELECTCOUNT(DISTINCTSAL)FROMSCOTT.EMP;

8、MEDIAN

求中位数

SELECTMEDIAN(SAL)FROMSCOTT.EMP;

SELECTMEDIAN(DISTINCTSAL)FROMSCOTT.EMP;?--错误:DISTINCT选项在此函数中禁用。