oracle中的聚合查询

1.聚合函数

------------------------------------------聚合函数---------------------------------------------

标准语法:

select  xxx  from tablename
 
--1:   AVG(DISTINCT|ALL)
ALL表示对所有的值求平均值,DISTINCT只对不同的值求平均值

SELECT AVG(SAL) FROM SCOTT.EMP;

SELECT AVG(DISTINCT SAL) FROM SCOTT.EMP;


--2:   MAX(DISTINCT|ALL)
求最大值,ALL表示对所有的值求最大值,DISTINCT表示对不同的值求最大值,相同的只取一次

SELECT MAX(DISTINCT SAL) FROM SCOTT.EMP;

SELECT MAX(SAL) FROM SCOTT.EMP

--3:   MIN(DISTINCT|ALL)
求最小值,ALL表示对所有的值求最小值,DISTINCT表示对不同的值求最小值,相同的只取一次

SELECT MIN(SAL) FROM SCOTT.EMP;

SELECT MIN(DISTINCT SAL) FROM SCOTT.EMP;

--6:  SUM(DISTINCT|ALL)
求和  ALL表示对所有值求和,DISTINCT表示只对不同值求和(相同值只取一次)

SELECT SUM(SAL) FROM SCOTT.EMP;

SELECT SUM(DISTINCT SAL) FROM SCOTT.EMP;

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

SELECT COUNT(SAL) FROM SCOTT.EMP;

SELECT COUNT(DISTINCT SAL) FROM SCOTT.EMP;  

 

count(*)与count(列名)的区别

若字段score,有三列,其中有一列为null,

count(*)为3

count(score)为2







原文地址:https://www.cnblogs.com/thomasbc/p/6657042.html