Mam dwie tabele i potrzebuję stworzyć widok. Tabele to:
credit_orders(id, client_id, number_of_credits, payment_status)
credit_usage(id, client_id, credits_used, date)
Aby to zrobić, używam następującego zapytania. Zapytanie bez części „tworzenie widoku” działa dobrze, ale w przypadku „tworzenia widoku” wyświetla błąd „SELECT widoku zawiera podzapytanie w klauzuli FROM”. Jaki może być problem i możliwe rozwiązanie:
create view view_credit_status as
(select credit_orders.client_id,
sum(credit_orders.number_of_credits) as purchased,
ifnull(t1.credits_used,0) as used
from credit_orders
left outer join (select * from (select credit_usage.client_id,
sum(credits_used) as credits_used
from credit_usage
group by credit_usage.client_id) as t0
) as t1 on t1.client_id = credit_orders.client_id
where credit_orders.payment_status='Paid'
group by credit_orders.client_id)