MySQL 버전이 어떻게 되나요?
분석함수 사용 가능 버전인지?
http://gurubee.net/article/81032
분석함수 기능이 MariaDB 10.2 부터 가능하네요. 10.1 은 안되는 듯.
copy_t 를 이용해 행을 복제하는 방식으로 구현해 봤습니다.
WITH data_t AS ( SELECT 70000 amt -- 금액 , 5.3 rat -- 이율 , 4 cnt -- 월수 ) , copy_t AS ( SELECT 1 lv UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9 UNION ALL SELECT 10 UNION ALL SELECT 11 UNION ALL SELECT 12 ) SELECT a.amt , a.rat , a.cnt , b.lv , ROUND(SUM(amt / POWER(1 + rat/12/100, c.lv))) pv FROM data_t a INNER JOIN copy_t b ON b.lv <= a.cnt INNER JOIN copy_t c ON c.lv <= b.lv GROUP BY a.amt, a.rat, a.cnt, b.lv ;