Tengo dos tablas y necesito crear una vista. Las tablas son:El SELECT de la vista contiene una subconsulta en la cláusula FROM
credit_orders(id, client_id, number_of_credits, payment_status)
credit_usage(id, client_id, credits_used, date)
Utilizo la siguiente consulta para hacer esto. La consulta sin la parte "crear vista" funciona bien, pero con "crear vista", muestra el error "SELECT de la vista contiene una subconsulta en la cláusula FROM". ¿Cuál podría ser el problema & solución posible:
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)
posible duplicado de [MySQL: vista con subconsulta en la limitación de la cláusula FROM] (http://stackoverflow.com/questions/206062/mysql-view-with-subquery-in-the-from-clause-limitation) –
@MattFenwick, no, no lo es - esa consulta se puede reescribir fácilmente, lo que no es posible en general – TMS
Las sub consultas son compatibles en mariadb '10.2' de la versión' 10.2.1' Ver - https://jira.mariadb.org/browse/MDEV-3944 –