Привет, работяги 🫡
Всех с пятницей, остался чуть-чуть продержаться ✊
Выкладываю обещанное решение задачи:
select
c.name
from account a
join client c on c.id=a.client_id and a.open_dttrunc(sysdate)
join transaction t on t.account_id=a.id and t.transaction_date between trunc(sysdate)-interval '1' MONTH and trunc(sysdate)
group by c.name having(sum(coalesce(t.amount,0)))
Всех с пятницей, остался чуть-чуть продержаться ✊
Выкладываю обещанное решение задачи:
Вывести имена клиентов, у которых есть хотя бы один активный счет, открытый больше года назад, и которые за последний месяц по всем своим счетам совершили транзакций меньше, чем на 5000.
Под активным счетом понимается счет, по которому в текущем месяце есть хотя бы одна транзакция.
Под годом/месяцем понимается интервал один год/один месяц от календарной даты.
select
c.name
from account a
join client c on c.id=a.client_id and a.open_dttrunc(sysdate)
join transaction t on t.account_id=a.id and t.transaction_date between trunc(sysdate)-interval '1' MONTH and trunc(sysdate)
group by c.name having(sum(coalesce(t.amount,0)))