Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите с задачей SQL

Mr_Edward Gamer Ученик (86), открыт 2 дня назад
Для каждого клиента выведите разность суммы запрошенных кредитных средств по всем заявкам и суммы выданных кредитных средств по всем заявкам. Отсортируйте выборку по убыванию разности. Известно, что в таблице нет значений NULL. В выборке должны присутствовать два атрибута: CLIENT_ID, diff.
1 ответ
ольга бартенева Знаток (288) 2 дня назад
Для решения вашей задачи на SQL, вам нужно использовать агрегатные функции для вычисления суммы запрошенных и выданных кредитных средств для каждого клиента, а затем вычислить разность между этими суммами. Предположим, что у вас есть таблица с названием credit_applications, которая содержит следующие столбцы: CLIENT_ID, requested_amount (запрошенные средства) и issued_amount (выданные средства).

Вот пример SQL-запроса, который выполняет вашу задачу:
SELECT
CLIENT_ID,
SUM(requested_amount) - SUM(issued_amount) AS diff
FROM
credit_applications
GROUP BY
CLIENT_ID
ORDER BY
diff DESC;
Объяснение запроса:

SELECT: Мы выбираем CLIENT_ID и вычисляем разность между суммой запрошенных и выданных средств, используя SUM(requested_amount) - SUM(issued_amount) AS diff.

FROM: Указываем таблицу, из которой будем извлекать данные (credit_applications).

GROUP BY: Группируем результаты по CLIENT_ID, чтобы получить суммы для каждого клиента.

ORDER BY: Сортируем результаты по убыванию разности (diff).
Этот запрос вернет список клиентов с их идентификаторами и разностью между запрошенными и выданными кредитными средствами, отсортированным по убыванию этой разности.
Похожие вопросы