首页 > 数据库技术 > 详细

Oracle 19C学习 - 06. 聚合函数

时间:2021-05-03 14:40:45      阅读:23      评论:0      收藏:0      [点我收藏+]

聚合函数

聚合函数对行进行操作,以使每个组产生一个结果。

技术分享图片

 

 

AVG(字段)与SUM(字段)函数

技术分享图片

 查找最大和最小入职日期

SELECT MAX(hire_date), MIN(hire_date)
FROM employees
WHERE job_id LIKE %PROG%;

MAX(HIRE_DATE)      MIN(HIRE_DATE)
------------------- -------------------
2007-05-21 00:00:00 2005-06-25 00:00:00

 

AVG函数遇到NULL的字段会忽略,比如十条记录求平均值,有两条记录是NULL,所以得到的结果是总数/8的结果。

要解决这个问题,需要使用NVL函数先将NULL值替换,然后嵌套在AVG函数内部求平均数。

SELECT AVG(commission_pct) FROM employees;   --只有非NULL记录参加了计算

AVG(COMMISSION_PCT)
-------------------
         .222857143

SQL> SELECT AVG(NVL(commission_pct,0)) FROM employees;   --将NULL记录替换为0后参加计算。

AVG(NVL(COMMISSION_PCT,0))
--------------------------
                .072897196

 

 

 

COUNT(字段)求个数,这个函数不统计空值。

技术分享图片

 

找出工资大于10000的员工数量

 SELECT COUNT(commission_pct) FROM employees;

COUNT(COMMISSION_PCT)
---------------------
                   35

SELECT COUNT(*) FROM employees;

  COUNT(*)
----------
       107

 

DISTINCT关键字去除重复

根据员工表统计出部门的数量

SELECT COUNT(DISTINCT(department_id)) FROM employees;

COUNT(DISTINCT(DEPARTMENT_ID))
------------------------------
                            11

Oracle 19C学习 - 06. 聚合函数

原文:https://www.cnblogs.com/slqleozhang/p/14727132.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!