oracle之4多行函数之分组函数

常用的分组函数:

Sum()求和:

聚合函数Count(*)求个数:

Avg()求平均值:

注意:求平均数的方法不同得到的值可能不同。

原因:因为count(*)和count(comm)不相等,count(*)是所有员工的个数,包括奖金(comm)为null的人。而count(comm)不包括奖金为null的人。

Max()求最大值:

Min()求最小函数:

分组数据group  by:

可以解决求各部门的平均工资的问题。

例如:

注意!!

在select后面的查询字段除了组函数里面的字段,其他有的字段在group by 字段后面必须含有。

包含在group by子句中的列不必包含在select列中。

多个列的分组:

Group by:先按照第一列分组,再按照第二列分组,以此类推。

Group by的增强语句:

Group by rollup(a,b)。

相同的值只选择一个:

Break on  deptno skip 2;

原文地址:https://www.cnblogs.com/txf0324/p/11038221.html

时间: 2024-10-11 14:45:51

oracle之4多行函数之分组函数的相关文章

DQL---条件查询、单行函数、多行函数、分组函数、数据类型

一.DQL 1.基本规则: (1)对于日期型数据,做 *,/ 运算不合法,可以进行 +, - 运算.比如给日期加一天或减一个月,结果仍为一个日期.两个日期间只能为减法,返回两个日期相差的天数,两个日期间做加法没任何意义. (2)包含空值(null)的数学表达式计算结果均为空值. (3)给字段取别名时,别名使用 双引号 括起来(根据双引号里的内容显示),不加双引号时会转为大写.字段与别名间可以使用AS关键字,也可使用空格. (4)oracle中连接字符是 || (也可以使用单行函数concat()

Oracle基本语法&&函数&&子查询&&分页查询&&排序&&集合操作&&高级分组函数

一.  数据库 手工---文件管理---数据库 DB:Database 数据库. DBMS:管理数据库的软件.(oracle) 主流关系数据库: 1.      Oracle 2.      DB2 3.      SQL Server 基本没人使 4.      MySQL  基本没人用,免费 Linux 开源,可以发现漏洞补上 Windows服务器会有补丁,数据易泄漏 eclipse 日食 数据表(Table): 表的行(Row):记录 表的列(Column):字段 二.  关系型数据库 一

Oracle学习(4):分组函数

分组函数 什么是分组函数? 分组函数作用于一组数据,并对一组数据返回一个值 组函数的类型 lAVG lCOUNT lMAX lMIN lSUM 数值求和 SQL> --求员工工资总额 SQL> select sum(sal) from emp; SUM(SAL) ---------- 29025 求数据条数 SQL> --求员工的人数 SQL> select count(*)from emp; COUNT(*) ---------- 14 求平均 SQL> --平均工资 SQ

oracle分组函数

分组函数:作用于一组值,并对一组数据返回一个值: 分组函数的使用: 常用的分组函数: Avg(求平均值),sum(求总和),min(求最小值),max(求最大值),count(求总个数),wm_concat(行转列) 例:select count( distinct deptno) from emp ; 行转列: select deptno 部门号,wm_concat(ename) 部门中员工的名字  from emp group by deptno; ---------------------

Oracle 高级排序函数 和 高级分组函数

高级排序函数: [ ROW_NUMBER()| RANK() | DENSE_RANK ] OVER (partition by xx order by xx) 1.row_number() 连续且递增的数字 1 2 3 4   row_number() over (partition by xx order by xx )    --学生表中按照所在专业分组,同专业内按成绩倒序排序,成绩相同则按学号正序排序,并给予组内等级select row_number() over(partition b

Oracle数据库(六)—— 分组函数

(一)组函数 avg:平均函数 max:最大值函数 min:最小值函数 sum:求和函数 stddev:标准差函数 count():计数函数 count(expr) 返回expr不为空的记录总数 NVL函数使分组函数无法忽略空值 COUNT(DISTINCT expr)返回expr非空且不重复的记录总数 (二) group by 1.对单个列分组 -- 求出employees表中各部门的平均工资 2.对多个列分组 -- 求出employees表中各部门.各工种的平均工资 在SELECT 列表中所

04.SQL基础-->分组与分组函数

一.分组: 分组函数可以对行集进行操作,并且为每组给出一个结果. 使用group by column1,column2,..按columm1,column2进行分组,即column1,column2组合相同的值为一个组 二.常用分组函数: AVG([DISTINCT|ALL]n) -- 求平均值,忽略空值 COUNT({*|[DISTINCT|ALL]expr}) -- 统计个数,其中expr用来判定非空值(使用*计算所有选定行,包括重复行和带有空值的行) MAX([DISTINCT|ALL]e

[转]【ROLLUP】Oracle分组函数之ROLLUP魅力

原创:http://blog.itpub.net/519536/viewspace-610995 本文通过演示给出Oracle ROLLUP分组函数的用法,体验一下Oracle在统计查询领域中的函数魅力.ROLLUP分组函数可以理解为Group By分组函数封装后的精简用法,这里同时给出ROLLUP的Group By的改写思路. 1.初始化实验坏境1)创建测试表group_test[email protected]> create table group_test (group_id int,

oracle:数值型函数,日期函数,转换函数,组函数,分组,排序,两表查询连接

--数值型函数 --四舍五入round(x,y)对x保留y为小数 --四舍五入数值 select round(23.225) from dual; --输出结果:24 --四舍五入(小数点后保留1位小数)数值 select round(23.652,1)from dual; --输出结果:23.7 --四舍五入(四舍五入到小数点前1位小数)数值 select round(25.2466,-1)from dual; --输出结果:30 -- 返回x按精度y截取后的值 --未四舍五入的值 selec