S'il est possible de supprimer ces jointures, supprimez-les. Les remplacer par des sous-requêtes l'accélérera beaucoup.
vous pouvez également essayer d'exécuter quelque chose comme ça pour voir s'il y a une différence de vitesse.
select [stuff] from orders as ord
left join (
create view calc_order_status as
select ord.id AS order_id,
(sum(itm.items * itm.item_price) + ord.delivery_cost) AS total_total
from orders ord
left join order_items itm on itm.order_id = ord.id
group by ord.id
) as ors on (ors.order_id = ord.id)