try:CREATE PROCEDURE test_pro
(iBegin IN NUMBER,
iEnd IN NUMBER,
summoney OUT NUMBER)
AS
num1 number;
num2 number;
BEGIN
SELECT SUM(DATAVALUE) into num1
FROM BASICDATAAMR_TAB
WHERE rownum <= iEnd;SELECT SUM(DATAVALUE) into num2
FROM BASICDATAAMR_TAB
WHERE rownum <= iBegin;summoney :=num1-num2;
END;
(iBegin IN NUMBER,
iEnd IN NUMBER,
summoney OUT NUMBER)
AS
num1 number;
num2 number;
BEGIN
SELECT SUM(DATAVALUE) into num1
FROM BASICDATAAMR_TAB
WHERE rownum <= iEnd;SELECT SUM(DATAVALUE) into num2
FROM BASICDATAAMR_TAB
WHERE rownum <= iBegin;summoney :=num1-num2;
END;
解决方案 »
- oracle递归查找问题
- 截取字段的数据
- [请教]Failed to commit the transaction: … caused by: ORA-00018: maximum number of
- 去重后的计数怎样实现
- Oracle10g在RedHat AS4 x86_64安装报错~~
- ORACLE中有没有函数可修改调度时间,如得到当前的时间,能不能算出前15分钟的时间?怎么算,谢谢
- Oracle出现的问题!快撑炸了我的硬盘了!请大家帮帮忙
- (统计)各公司ORACLE数据库和操作系统的搭配方式(来者有分)
- 求助: 在插入一个数据前的检查问题
- 服务器上oracle数据库实例最近两月就挂掉一次,报472错误,还没查到具体问题,求帮忙啊,万分感谢!
- 如何查看oracle数据库里的数据?
- 关于建表空间和用户
这种语句
FROM BASICDATAAMR_TAB
WHERE rownum <= iEnd
minus
SELECT summoney = SUM(DATAVALUE)
FROM BASICDATAAMR_TAB
WHERE rownum <= iBegin
------------------------------
楼主这段代码想得到什么结果,我觉得在SQLPLUS中执行都不会得到你想要的
i number;
j number;
BEGIN
SELECT SUM(DATAVALUE) into i FROM BASICDATAAMR_TAB WHERE rownum <= iEnd;
SELECT SUM(DATAVALUE) into j FROM BASICDATAAMR_TAB WHERE rownum <= iBegin; summoney:=i-j;
END
iBegin到iEnd行之间DATAVALUE的总量
WHERE rownum <= iEnd
minus
SELECT DATAVALUE FROM BASICDATAAMR_TAB
WHERE rownum <= iBegin)
WHERE rownum <= 20
MINUS
SELECT SUM(DATAVALUE) FROM BASICDATAAMR_TAB
WHERE rownum <= 11同样可以得到结果的
(iBegin IN NUMBER,
iEnd IN NUMBER,
summoney OUT NUMBER)
IS
i:number;
j:number;
BEGIN
....
END你是两个变量相减,怎么用minus?