如何用oracle存储过程实现输入金额,期限和年利率给出等额本息的结果呢?
下面这个存储过程帮我们实现了,如下:
CREATE OR REPLACE PROCEDURE BIZ_GJL_DEBX(
iouCode in varchar2,
loanAmount in NUMBER,
yearRate in NUMBER,
periondMonth in NUMBER
)
IS
period_unit number;
monthLixi number;
monthRepayAmountFinal number;
monthLixiReprical number;
aaa number;
bbb number;
monthRepayAmount number;
instenstSum number;
ipSum number;
monthRate number;
BEGIN
period_unit:=0;--遍历的期数
--月利率
monthRate:=yearRate/12;
aaa:=loanAmount*monthRate;
bbb:=(1-1/(power(1+monthRate,periondMonth)));
---月还金额
monthRepayAmount:=aaa/bbb;
---利息总额
instenstSum:= ROUND(monthRepayAmount*periondMonth-loanAmount,2);
---本息和
ipSum:=ROUND(monthRepayAmount*periondMonth,2);
---月还金额保留两位小数
monthRepayAmountFinal:=ROUND(monthRepayAmount,2);
---每月利息
--monthL