select pay_ability, concat(round(sum(count_number)/sum(count_1)*100,1),'%') as overdue_ratio
from
(
select pay_ability,
case 
when overdue_days>0 then 1
else 0
end as count_number,
1 as count_1
from
(
select l.customer_id,pay_ability,overdue_days from loan_tb as l
join 
(
select customer_id,pay_ability from customer_tb
) as c
on l.customer_id = c.customer_id
) as t1
) as t2
group by pay_ability
order by concat(round(sum(count_number)/sum(count_1)*100,2),'%') desc