数据库(分组函数)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了数据库(分组函数),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1694字,纯文字阅读大概需要3分钟。
内容图文
分组函数:对表中一组记录进行操作,每次只返回一个结果。 常用的函数有:MIN,MAX,SUM,AVG,COUNT等 MIN和MAX返回每组的最小和最大。 eg:select min(salary),max(salary) from employees; SUM和AVG函数分别返回总和平均。 eg:select sum(salary),avg(salary)
分组函数:对表中一组记录进行操作,每次只返回一个结果。
常用的函数有:MIN,MAX,SUM,AVG,COUNT等
MIN和MAX返回每组的最小值和最大值。
eg:select min(salary),max(salary) from employees;
SUM和AVG函数分别返回总和平均值。
eg:select sum(salary),avg(salary) from emloyees;
count函数主要返回每组的记录条数。
eg:select count(*) from employees where job_id=' ';
GROUP BY...HAVING 子句的使用。
组函数忽略空值,可以使用NVL,NVL2,COALESCE函数处理空值
eg:相同职位相同经理的员工的平均工资。
select job_id,manager_id,avg(salary)
from employees
group by job_id,manager_id
*GROUP BY 子句注意问题:
1.GROUP BY 子句后面的列可以不再SELECT 语句中出现。
2.SELECT 子句中出现的 “非分组函数 ” 必须在GROUP BY子句中出现
HAVING子句。
错误示例:
select job_id,max(salary)
from employees
where max(salary)>=8888
group by job_id;
原因是查询语句的执行顺序是:from where group by select order by
正确示例:
select job_id,max(salary)
from employees
group by job_id
having max(salary)>8888;
总结SELECT语句执行过程:
– 通过FROM子句中找到需要查询的表;
– 通过WHERE子句进行非分组函数筛选判断;
– 通过GROUP BY子句完成分组操作;
– 通过HAVING子句完成组函数筛选判断;
– 通过SELECT子句选择显示的列或表达式及组函数;
– 通过ORDER BY子句进行排序操作。
eg:
select department_id,max(salary)
from employees
where department_id between 30 and 90
group by department_id
having max(salary)>8888
order by max(salary);
??
内容总结
以上是互联网集市为您收集整理的数据库(分组函数)全部内容,希望文章能够帮你解决数据库(分组函数)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。