日期:2014-05-17  浏览次数:20660 次

用Oracle存储过程怎么实现这个功能(急)
说明:1.档的概念:通过档来进行分层计算。
  2.档的个数:每个人档的个数和比例是不一定的。
  3.档的个数和比例放在数据库的demo表中。
  4.通过存储过程来计算金额。
例子:比如说某个一他有3档。
  如果他有3000块钱,有2档,比例分别是90,50,限额是1000,5000
  计算金额=1000*90+(3000-1000)*50
  因为档的个数和比例是不一定的,只能通过存储过程来查。我该怎么进行计算?
 

------解决方案--------------------
循环每个人不同的档,依次计算就可以了,很简单。
------解决方案--------------------
测试数据:
SQL code

DROP TABLE T178;
CREATE TABLE T178
(
    NAME VARCHAR2(20),
    Lev NUMBER(2),
    QUOTA   NUMBER(6),
    PERCENT NUMBER(3)
);

INSERT INTO T178 VALUES('小王', 1, 1000, 90);
INSERT INTO T178 VALUES('小王', 2, 2000, 50);
INSERT INTO T178 VALUES('小王', 3, 5000, 40);
INSERT INTO T178 VALUES('小李', 1, 1000, 90);
INSERT INTO T178 VALUES('小李', 2, 1400, 80);
INSERT INTO T178 VALUES('小李', 3, 5000, 50);