my $current_month = 11; my $num_days_of_supp = 120; my @months_of_support = ( ($current_month-($num_days_of_supp/30)+1) .. $current_month ); my $sql = 'SELECT GREATEST(ROUND((SUM' . join( '+', map { sprintf "mth_%02i", $_ } ( 0 .. 12 ) ) . ") / 365 ) * $num_days_of_supp ), ROUND (SUM (" . join('+', map { sprintf "mth_%02i", $_ } @months_of_support) . '))) QTY, b. p_dlrn, b.p_dlrsplrcode ' . <