oracle sum()聚合函数

Posted 莱河

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle sum()聚合函数相关的知识,希望对你有一定的参考价值。

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

oracle sum()聚合函数

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的行数);

以上是关于oracle sum()聚合函数的主要内容,如果未能解决你的问题,请参考以下文章

Oracle_SQL 分组与聚合函数

oracle 聚合函数求和后,小数点前面的零不显示

能说一下oracle中的开窗函数 聚合函数 分析函数都是啥吗?

26《MySQL 教程》聚合函数(聚合函数 MIN、MAX)

oracle 中 sum 如何使用,

我要用oracle根据我截取到的年龄分组,查询显示其它字段,但是不用max(),sum()等聚合函数