表如下所示
table:no(number) time(date) data(number)1 2013 - 07 -24 00:10:00 10
2 2013 - 07 -24 00:20:00 20
1 2013 - 07 -24 00:30:00 40
2 2013 - 07 -24 00:40:00 60
3 2013 - 07 -24 00:50:00 70
3 2013 - 07 -24 00:60:00 60
需求:
1、自定义一个oracle聚合函数,其中将"no"、"time"、"data"作为参数传入
2、求每一个“编号”(这里编号有三个分别为1、2、3)最近时间内的“data”值并求和,返回一个number类型的值。Oracle自定义聚合函数自定义聚集函数函数
table:no(number) time(date) data(number)1 2013 - 07 -24 00:10:00 10
2 2013 - 07 -24 00:20:00 20
1 2013 - 07 -24 00:30:00 40
2 2013 - 07 -24 00:40:00 60
3 2013 - 07 -24 00:50:00 70
3 2013 - 07 -24 00:60:00 60
需求:
1、自定义一个oracle聚合函数,其中将"no"、"time"、"data"作为参数传入
2、求每一个“编号”(这里编号有三个分别为1、2、3)最近时间内的“data”值并求和,返回一个number类型的值。Oracle自定义聚合函数自定义聚集函数函数
return number as
v_n number ;
v_data number ;
begin
select no,sum(data) into v_n,v_data from table where no=参数,, group by no;
return v_data;
exception
when no_data_found then
raise_application_error(-20001, 'xxxxx');
end ;
大致这样吧!
2、其次您没有仔细看需求,每个编号最近时间内的data值 比如编号1 最近时间内的值为 10 以此类推 编号2为20 编号3为70 然后对他们求和 返回。