从零开始学Oracle—内建函数(四)
2009-04-09 13:11:35 来源:WEB开发网分组函数
AVG([{DISYINCT|ALL}]) distinct去掉重复的数据 all所有数据
Max
SUM
Count 计数函数
count(*) 统计所有的行,包括重复的值和空值
count(col_name) 统计列中非空值的个数
count(distinct col_name) 统计列中除去空值和重复值的行数
分析函数:
作用:用于完成对聚集的累计排名,移动平均数和报表计算。
分析函数是查询中执行的最后一组操作,只能出现在select列表或order by 字句
row_number() over([Partition by column] order by column) 返回唯一排序值select
按工资排名:
ename,job,deptno,sal,row_number() over(order by sal desc) as A from empa;
按部门分组再按工资排名
select ename,job,deptno,sal,row_number() over(Partition by deptno order by sal desc) as A from empa
rank() 计算一个值在一组值中的排位,排位从1开始,相等值的行排位相同,序数跳跃相应值.
select ename,sal,comm,deptno,rank() over(partition by deptno order by sal desc) from empa;
dense_rank() 计算一个行在一组有序行中的排位,排位从1开头的连续整数,具有相等值,排位相同。排位是连续的。
select d.dname,e.ename,e.sal,dense_rank() over(partition by e.deptno order by e.sal desc) denserank
from empa a,dept d where e.deptno=d.deptno
系列文章:
从零开始学Oracle—环境配置(一)
从零开始学Oracle—基本语法解析(二)
从零开始学Oracle-—约束(三)
从零开始学Oracle—内建对象(五)
从零开始学Oracle—性能对象(六)
从零开始学Oracle—PL/SQL(七)
从零开始学Oracle—异常处理(八)
- ››oracle 中 UPDATE nowait 的使用方法
- ››Oracle ORA-12560解决方法
- ››Oracle 10g RAC 常用维护命令
- ››Oracle如何在ASM中定位文件的分布
- ››Oracle的DBMS_RANDOM.STRING 的用法
- ››oracle 外部表导入时间日期类型数据,多字段导入
- ››Oracle中查找重复记录
- ››oracle修改用户登录密码
- ››Oracle创建删除用户、角色、表空间、导入导出等命...
- ››Oracle中登陆时报ORA-28000: the account is lock...
- ››Oracle数据库在配置文件中更改最大连接数
- ››Oracle中在pl/sql developer修改表的两种方式
更多精彩
赞助商链接