Практика· 12 мин· 15 XP
Доля транзакции от итога по счёту
Задание
Контекст: Финансовый аналитик изучает структуру транзакций внутри каждого счёта. Одна крупная транзакция на 90% от оборота счёта и десять мелких по 1% — это совсем другой паттерн, чем равномерное распределение. Долевой анализ помогает выявить нетипичное поведение и возможные ошибки.
Техническое задание: Напишите SQL-запрос к таблице transactions.
Для каждой транзакции посчитайте общую сумму всех транзакций по тому же счёту с помощью оконной функции SUM(amount) OVER (PARTITION BY account_id). Затем вычислите долю транзакции в процентах от этой суммы.
Выведите:
id— идентификатор транзакцииaccount_id— идентификатор счётаamount— сумма транзакцииaccount_total— суммарный оборот счётаpct— доля транзакции в процентах, округлённая до 2 знаков после запятой
Отсортируйте по account_id по возрастанию, затем по amount по убыванию — крупнейшие транзакции каждого счёта сверху.
Enter — новая строка
Результат выполнения SQL-запроса
История твоих попыток решения
Показать эталонное решение задачи
ER-диаграмма таблиц базы данных
Ожидаемые колонки в правильном ответе
Появится после 3 неудачных попыток
Анализ плана выполнения запроса PostgreSQL
Результаты появятся здесь после выполнения запроса.