Intern
Užduotis 2. Lentelių jungimas Reikalavimas: Gauti visų klientų sąrašą (abėcėlės tvarka), nepriklausomai nuo to, ar jie turi paskolas ar ne, ir pridėti kiekvienam klientui lauką total_loan_amount – visų jo paskolų suma. Jei klientas neturi paskolų, rodyti 0. Išvestis – trys stulpeliai: client_id, client_name, total_loan_amount.
sobes.tech AI
Atsakymas iš AI
Для решения задачи нужно выполнить LEFT JOIN таблицы клиентов с таблицей кредитов, сгруппировать по клиенту и посчитать сумму кредитов. Если кредитов нет, сумма будет NULL, её нужно заменить на 0 с помощью COALESCE.
Пример SQL-запроса:
SELECT
c.client_id,
c.client_name,
COALESCE(SUM(l.loan_amount), 0) AS total_loan_amount
FROM clients c
LEFT JOIN loans l ON c.client_id = l.client_id
GROUP BY c.client_id, c.client_name
ORDER BY c.client_name ASC;
Здесь:
clients— таблица с клиентамиloans— таблица с кредитамиloan_amount— сумма кредита
Так мы получим всех клиентов, отсортированных по имени, и сумму их кредитов или 0, если кредитов нет.