В loans — выданные кредиты наличными, в overdue_events — моменты, когда платёж по кредиту ушёл в просрочку (overdue_from, первый день просрочки). У кредита может быть несколько таких событий.
Для каждого месяца выдачи посчитайте: issued — сколько кредитов выдано, overdue_60 — у скольких первая просрочка случилась не позже 60-го дня после выдачи (overdue_from <= issued_on + 60), и overdue_pct — их долю в процентах с 1 знаком.
Месяц выдачи — issue_month, первое число месяца. Месяцы без просрочек тоже нужны, с нулём. Порядок — по issue_month.
В работе: Ранний сигнал для риск-аналитика: какой месяц выдач оказался хуже и не пора ли ужесточить скоринг.
Таблицы
loans — выданные кредиты
| Колонка | Тип | Что значит |
|---|---|---|
loan_id | int | ключ |
client_id | int | клиент |
issued_on | date | дата выдачи |
amount_rub | numeric | сумма, ₽ |
overdue_events — выходы в просрочку
| Колонка | Тип | Что значит |
|---|---|---|
event_id | int | ключ |
loan_id | int | кредит |
overdue_from | date | первый день просрочки |
Пример: данные
loans · 5 строк
| loan_id | client_id | issued_on | amount_rub |
|---|---|---|---|
| 1 | 501 | 2025-01-10 | 300000 |
| 2 | 502 | 2025-01-15 | 150000 |
| 3 | 503 | 2025-01-28 | 500000 |
| 4 | 504 | 2025-02-03 | 200000 |
| 5 | 505 | 2025-02-20 | 90000 |
overdue_events · 4 строки
| event_id | loan_id | overdue_from |
|---|---|---|
| 1 | 1 | 2025-01-30 |
| 2 | 2 | 2025-04-15 |
| 3 | 5 | 2025-03-27 |
| 4 | 5 | 2025-04-11 |
Ожидаемый ответ
| issue_month | issued | overdue_60 | overdue_pct |
|---|---|---|---|
| 2025-01-01 | 3 | 1 | 33,3 |
| 2025-02-01 | 2 | 1 | 50 |
SELECT, можно с WITH. Сравниваем значения по порядку колонок, названия колонок могут быть свои. Порядок строк важен — как задано в условии.
issue_month, issued, overdue_60, overdue_pct
Источник: на данных кредитного конвейера: выдачи и выходы в просрочку. Условие пересказано своими словами.
Посмотреть данные, проверить кусок запроса. На зачёт не влияет.
Здесь появится результат отправки.