select
    t3.pay_ability,
    concat (format (t3.overdue_ratio * 100, 1), '%') overdue_ratio
from
    (
        select
            t1.pay_ability,
            ROUND(
                SUM(
                    CASE
                        WHEN t2.overdue_days IS NULL THEN 0
                        ELSE 1
                    END
                ) / COUNT(*), -- 修正1: 添加END, 修正2: 使用COUNT(*)
                3
            ) AS overdue_ratio
        from
            customer_tb t1
            left join loan_tb t2 on t1.customer_id = t2.customer_id
        group by
            t1.pay_ability
        
    ) t3
    order by overdue_ratio desc;