码迷,mamicode.com
首页 > 数据库 > 详细

oracle sum()聚合函数

时间:2019-11-10 22:41:13      阅读:73      评论:0      收藏:0      [点我收藏+]

标签:tin   count   分析函数   ref   top   targe   open   bar   line   

原文链接: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()聚合函数

标签:tin   count   分析函数   ref   top   targe   open   bar   line   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有 京ICP备13008772号-2
迷上了代码!