В card_tx — операции по картам: покупка с положительной суммой, возврат — с отрицательной в той же категории. Для каждого клиента найдите категорию с наибольшими чистыми тратами (покупки минус возвраты) за октябрь 2025.
Категории с чистой суммой 0 и меньше не рассматриваются; клиент без таких категорий в ответ не попадает. При равных суммах берите категорию, которая раньше по алфавиту.
Верните client_id, category, spent_rub; порядок — по client_id.
В работе: Выбор категории повышенного кешбэка, которую предложат клиенту в следующем месяце.
Таблицы
card_tx — одна строка — одна операция
| Колонка | Тип | Что значит |
|---|---|---|
tx_id | int | ключ |
client_id | int | клиент |
category | text | Супермаркеты, Рестораны, АЗС, Такси, Аптеки |
amount_rub | numeric | сумма, ₽; возврат — с минусом |
tx_at | timestamp | время операции |
Пример: данные
card_tx · 6 строк
| tx_id | client_id | category | amount_rub | tx_at |
|---|---|---|---|---|
| 1 | 1 | Супермаркеты | 4200 | 2025-10-02T19:10:00 |
| 2 | 1 | Рестораны | 3100 | 2025-10-04T21:00:00 |
| 3 | 1 | Супермаркеты | 2800 | 2025-10-11T18:30:00 |
| 4 | 2 | АЗС | 3500 | 2025-10-05T08:00:00 |
| 5 | 2 | Такси | 900 | 2025-10-06T23:10:00 |
| 6 | 2 | АЗС | 3200 | 2025-10-20T08:15:00 |
Ожидаемый ответ
| client_id | category | spent_rub |
|---|---|---|
| 1 | Супермаркеты | 7000 |
| 2 | АЗС | 6700 |
SELECT, можно с WITH. Сравниваем значения по порядку колонок, названия колонок могут быть свои. Порядок строк важен — как задано в условии.
client_id, category, spent_rub
Источник: на данных дебетовых карт: транзакции и категории. Условие пересказано своими словами.
Посмотреть данные, проверить кусок запроса. На зачёт не влияет.
Здесь появится результат отправки.