CAFE

SQL Query Tips

[FE] 원리금균등상환 계산기

작성자원쿼리맨|작성시간14.03.08|조회수2,451 목록 댓글 0

원리금균등상환 계산기를 구현해 본다.


-- s : 대출금액 (원단위, 여기서는 1억원)
-- r : 대출금리 (%, 여기서는 5%)
-- t : 대출기간 (년, 여기서는 1년)
-- 아래에서 rep1 컬럼은 1회차 상환원금을 말한다.

with fe as (
select 100000000 s, 0.05 r, 1 t from dual)
SELECT ORD 회차
     , S * R / 12 + REP1 상환원리금
     , REP1 * POWER (1 + R / 12, ORD - 1) 상환원금
     , S * R / 12 + REP1 - REP1 * POWER (1 + R / 12, ORD - 1) 월이자금액
     , S - REP1 * (POWER (1 + R / 12, ORD) - 1) / (R / 12) 잔액
  FROM (SELECT     S, R, LEVEL ORD,
                   S * R / 12 / (POWER (1 + R / 12, 12 * T) - 1) REP1
              FROM FE
        CONNECT BY LEVEL <= 12 * T)




      회차   상환원리금    상환원금  월이자금액       잔액
---------- ---------- ---------- ---------- ----------
         1 8560748.18 8144081.51 416666.667 91855918.5
         2 8560748.18 8178015.19 382732.994 83677903.3
         3 8560748.18 8212090.25 348657.930 75465813.1
         4 8560748.18 8246307.29 314440.888 67219505.8
         5 8560748.18 8280666.90 280081.274 58938838.9
         6 8560748.18 8315169.68 245578.495 50623669.2
         7 8560748.18 8349816.22 210931.955 42273853.0
         8 8560748.18 8384607.12 176141.054 33889245.8
         9 8560748.18 8419542.99 141205.191 25469702.8
        10 8560748.18 8454624.42 106123.762 17015078.4
        11 8560748.18 8489852.02 70896.1601 8525226.40
        12 8560748.18 8525226.40 35521.7767          0






참고로 아래에 '원금균등상환' 계산기도 구현해 본다.
원금균등상환은 원리금균등상환보다 간단한 로직이다.


-- s, r, t는 위와 같은 의미이다.
-- 아래에서 NP 컬럼은 회차마다 균등한 상환원금을 말한다.
-- 마지막 회차 잔액에 0에 가깝지만 0이 아닌 수(4.E-32)가 나옴에 유의한다.

with fe as (
select 100000000 s, 0.05 r, 1 t from dual)
SELECT ORD 회차
     , (S - NP * (ORD - 1)) * R / 12 + NP 상환원리금
     , NP 상환원금
     , (S - NP * (ORD - 1)) * R / 12 월이자금액
     , S - NP * ORD 잔액
  FROM (SELECT     S, R, LEVEL ORD,
                   S / 12 / T NP
              FROM FE
        CONNECT BY LEVEL <= 12 * T)  




      회차   상환원리금    상환원금  월이자금액       잔액
---------- ---------- ---------- ---------- ----------
         1    8750000 8333333.33 416666.667 91666666.7
         2 8715277.78 8333333.33 381944.444 83333333.3
         3 8680555.56 8333333.33 347222.222 75000000.0
         4 8645833.33 8333333.33     312500 66666666.7
         5 8611111.11 8333333.33 277777.778 58333333.3
         6 8576388.89 8333333.33 243055.556 50000000.0
         7 8541666.67 8333333.33 208333.333 41666666.7
         8 8506944.44 8333333.33 173611.111 33333333.3
         9 8472222.22 8333333.33 138888.889 25000000.0
        10    8437500 8333333.33 104166.667 16666666.7
        11 8402777.78 8333333.33 69444.4444 8333333.33
        12 8368055.56 8333333.33 34722.2222     4.E-32

다음검색
현재 게시글 추가 기능 열기

댓글

댓글 리스트
맨위로

카페 검색

카페 검색어 입력폼