Отчётная дата — 1 апреля 2026 года. В transactions лежат операции по картам по 31 марта включительно. У части входящих переводов из других банков клиент не определён — client_id в них NULL.
Найдите спящих клиентов: у них нет ни одной операции с 1 января 2026 года 00:00 (это ровно 90 дней до отчётной даты). Клиентов, открывших счёт 1 января 2026 года и позже, не считайте: они просто новые.
Верните client_id, full_name и last_tx_at — время последней операции или NULL, если операций не было. Порядок — по client_id.
В работе: Список для кампании реактивации: кому из спящих позвонить или дать повышенный кешбэк.
Таблицы
clients — клиенты банка
| Колонка | Тип | Что значит |
|---|---|---|
client_id | int | ключ |
full_name | text | ФИО |
city | text | город |
opened_at | date | дата открытия счёта |
transactions — операции по картам, по 31.03.2026 включительно
| Колонка | Тип | Что значит |
|---|---|---|
tx_id | int | ключ |
client_id | int | клиент, может быть NULL |
amount_rub | numeric | сумма |
tx_at | timestamp | время операции |
Пример: данные
clients · 4 строки
| client_id | full_name | city | opened_at |
|---|---|---|---|
| 1 | Анна Ковалёва | Москва | 2023-05-10 |
| 2 | Игорь Сафин | Казань | 2024-11-02 |
| 3 | Мария Лебедева | Самара | 2025-02-14 |
| 4 | Олег Никитин | Тула | 2026-02-10 |
transactions · 3 строки
| tx_id | client_id | amount_rub | tx_at |
|---|---|---|---|
| 101 | 1 | 1500 | 2026-03-15T12:00:00 |
| 102 | 2 | 830,5 | 2025-11-20T09:30:00 |
| 103 | 2 | 4200 | 2025-08-02T18:10:00 |
Ожидаемый ответ
| client_id | full_name | last_tx_at |
|---|---|---|
| 2 | Игорь Сафин | 2025-11-20T09:30:00 |
| 3 | Мария Лебедева | NULL |
SELECT, можно с WITH. Сравниваем значения по порядку колонок, названия колонок могут быть свои. Порядок строк важен — как задано в условии.
client_id, full_name, last_tx_at
Источник: на данных Сбера, по мотивам открытой подборки вопросов. Условие пересказано своими словами.
Посмотреть данные, проверить кусок запроса. На зачёт не влияет.
Здесь появится результат отправки.