oracle i 函数,Oracle数据库(六)—— 分组函数

(一)组函数

avg:平均函数

max:最大值函数

min:最小值函数

sum:求和函数

stddev:标准差函数

7b7699f0cfb5458d90db53925994c46e.png

count():计数函数

count(expr) 返回expr不为空的记录总数

aad70f4af00be80a0ec44348672b445b.png

NVL函数使分组函数无法忽略空值

5e74de5676336b119c33c54383daa3ad.png

COUNT(DISTINCT expr)返回expr非空且不重复的记录总数

29b3bb9126d006a804c9147b8c5ef2d1.png

(二) group by

1、对单个列分组

-- 求出employees表中各部门的平均工资

a801385c101be962e65d25809864dd3b.png

2、对多个列分组

-- 求出employees表中各部门、各工种的平均工资

0fe4209cab23f9e95ed0a5d77b3c2ed9.png

在SELECT 列表中所有未包含在组函数中的列都应该包含 在 GROUP BY 子句中

不能在 WHERE 子句中使用组函数

可以在 HAVING 子句中使用组函数

(三)having:过滤分组

使用 HAVING 过滤分组:

1. 行已经被分组。

2. 使用了组函数。

3. 满足HAVING 子句中条件的分组将被显示

SELECT column, group_function

FROM table

[WHERE condition]

[GROUP BY group_by_expression]

[HAVING group_condition]

[ORDER BY column];

-- 求出各部门中平均工资大于6000的部门

9bc17bb3db70663ef46686f5f74b7f84.png

(四)嵌套组函数

-- 求出各部门中平均工资的最大值

9e3a0d307eb33affa4eab9333177a7c2.png

(五)总结

使用组函数:avg(),sum(),max(),min(),count()

在查询中使用 GROUP BY 子句。

在查询中使用 HAVING 子句。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值