oracle sum()聚合函数

原文链接:https://blog.csdn.net/cizatu5130/article/details/100291347

oracle sum()聚合函数

2016-05-13 20:08:00 cizatu5130 阅读数 8

Oracle 的sum聚合函数的功能就是求和(这里暂时不讨论分析函数用法),一般用法不多讲,有个用法比较令人疑惑,曾经也踩过它的坑。示例如下:
 declare
   cursor t_cur is
     select * from emp where empno = 7934 ;
   v_count number;
 begin
   for tm_cur in t_cur loop
     select sum(tm_cur.sal) into v_count from dept;
   end loop;
   dbms_output.put_line(v_count);
 end;

这里的sum 求和的不是dept里面的字段,而是select 以外的其他值,刚开始看,还真一下子转不过来。再仔细想想,其实很简单,如下:
SQL> select 1 from dept ;
         1
----------
         1
         1
         1
         1
SQL> select sum(1) from dept;
    SUM(1)
----------
         4
所以select sum(tm_cur.sal) into v_count from dept 的意思很简单,即结果为tm_cur.sal * (dept的行数);

原文地址:https://www.cnblogs.com/xudj/p/11832077.html

时间: 2024-11-07 01:11:48

oracle sum()聚合函数的相关文章

SQL编程实例:Access数据库,两张表的统计,count、sum聚合函数的使用,iif的使用,group by的使用

小媛在努力 时间限制:1000 ms  |  内存限制:65535 KB 难度:2 描述 在多媒体数据处理中,数据压缩算法尤为重要.小媛上完课后就想自己发明一个数据压缩算法.她想呀想,终于想到一个方法.在多媒体数据中有很多数据都是重复的,所以她想把连续相同的数据用数据出现的次数和数据本身表示.例如:1 1 1 2 3 3 3 3 3  压缩后及为3 1 1 2 5 3(表示3个1,1个2和5个3).有想法后小媛就希望把它用代码实现了.但是大家都知道小媛现在整天都忙着苦B的复习考研,连电脑都摸不到

Oracle 自定义聚合函数

create or replace type str_concat_type as object ( cat_string varchar2(4000), static function ODCIAggregateInitialize(cs_ctx In Out str_concat_type) return number, member function ODCIAggregateIterate(self In Out str_concat_type,value in varchar2) re

oracle语句中的聚合函数以及分组group by的使用实例

1 create table t_class2( 2 name varchar2(255), 3 subject varchar2(255), 4 score integer, 5 stuid integer 6 ) 7 8 insert into t_class2 values('张三','数学',89,1); 9 insert into t_class2 values('张三','语文',80,1); 10 insert into t_class2 values('张三','英语',70,1

sqlserver的over开窗函数(与排名函数或聚合函数一起使用)

首先初始化表和数据 1 create table t_student( 2   Id INT, 3   Name varchar(100), 4   Score int, 5   ClassId INT 6 ); 7 8 insert into t_student values (1,'A',75,1); 9 insert into t_student values (2,'B',78,2); 10 insert into t_student values (3,'C',74,1); 11 in

oracle中的聚合函数count、max、min、sum、avg以及NVL函数的用法

oracle中的聚合函数count.max.min.sum.avg以及NVL函数的用法 分组函数聚合函数对一组行中的某个列执行计算执行计算并返回单一的值.聚合函数忽略空值.聚合函数经常与 SELECT 语句的 GROUP BY 子句一同使用,所以有的时候也把其称之为分组函数.这类函数通常应用于报表统计中,以下展示Oracle常用的聚合函数的应用. 分组函数的介绍 作用于一组数据,并对一组数据返回一个值. 常见的分组函数有: Count 用来计算有效数据的数量 Min 返回一个数字列或计算列的最小

oracle中的常用函数、字符串函数、数值类型函数、日期函数,聚合函数。

一.字符串的常用函数. --一.oracle 字符串常用函数 --1. concat 连接字符串的函数,只能连接[两个]字符串. 字符写在括号中,并用逗号隔开! --2.“||”符号可以连接多个字符串 直接用||将多个字符链接即可. --3. dual? dual是一个虚拟表,用来构成select的语法规则,oracle保证dual里面永远只有一条记录. select concat('lo','ve')from dual; select concat('o','k')from dual; sel

聚合函数:sum,avg,max,min,count;模糊查询;排序

----聚合函数 --做计算 做统计 对null过滤:null是指不知道什么值,所以无法做计算--sum(参数):统计和--avg(参数):求平均值--max(参数):最大值--min(参数):最小值--count(参数):获取满足条件的记录数--1.获取学员总人数select COUNT(Email) from Student--2.获取最大的年龄值 年龄值越大,年龄越小 年龄值越小,年龄越大select MAX(BornDate) from Studentselect min(BornDat

四.Oracle聚合函数和内外全连接

1.聚合函数 同时对一组数据行进行操作,对每组行返回一行输出结果,叫做分组函数.(将多行数据分成一行或多行,每组行只返回一行结果) 1.1聚合函数不能出现在where字句中 1.2常用的聚合函数: count: 表示返回满足条件的总行数,(注:建议用rowid统计总行数,因为它代表唯一的物理地址,或者用唯一标识符(主键);) 使用 * 效率慢,因为它先会去select * from all_tab_cols(字典表)去搜索表有那些列,然后再去分析那个列查询速度更快 例:select count(

sql server聚合函数sum计算出来为空,怎样返回0

通常我们计算数据库中表的数据有几个常用的聚合函数 1.count : 计数 2.sum: 计算总和 3.avg: 取平均值 4.max: 取最大值 5.min: 取最小值 6.isnull: 当返回数据为空,默认设置为0 7.coalesce: 当返回数据为空,默认设置为0 1.count的使用 下面是一个student表的所有数据 1) 计算表中数据的数量,count(*),返回结结果是6 2)计数表中地址数据的数量,count(address),返回结果是5 2.sum的使用 1)计算总的年