I have this sql query
Select parent_order_id,product_id,hub_id,cast(1- '0.05' * MONTHS_BETWEEN(SYSDATE(), order_processing_date)as unsigned) AS total_sum
FROM (select q1.parent_order_id, q1.product_id, q1.hub_id, q1.order_processing_date from (select o1.parent_order_id,
o2.product_id, o1.hub_id, o1.order_processing_date from licious.orders as o1 join licious.order_items as o2 on o1.order_id = o2.order_id
WHERE DATE(o1.order_processing_date) BETWEEN DATE(DATE_SUB(CURRENT_TIMESTAMP(), INTERVAL 90 day) )AND DATE(CURRENT_TIMESTAMP())
AND o1.status = "Delivered") as q1
join ((select o1.parent_order_id from licious.orders as o1 join licious.order_items as o2 on o1.order_id = o2.order_id
WHERE DATE(o1.order_processing_date) BETWEEN DATE(DATE_SUB(CURRENT_TIMESTAMP(), INTERVAL 90 day) )
AND DATE(CURRENT_TIMESTAMP()) AND o1.status = "Delivered" group by parent_order_id having count(parent_order_id > 1)
)) as q2 on q1.parent_order_id = q2.parent_order_id)
group by
parent_order_id,
product_id,
hub_id,
order_processing_date
order by
parent_order_id desc,
total_sum desc;
I'm getting error every derived table must have it's own alias I know i need to use alias but i have already used it and i don't know where to modify my query Can anyone just check the whole query and update it. It will be a great help.
Ps: I just edited my question because the previous one got solved just by writing UNSIGNED instead of int