Jika memungkinkan untuk menghapus gabungan itu, hapus saja. Menggantinya dengan subquery akan sangat mempercepatnya.
Anda juga dapat mencoba menjalankan sesuatu seperti ini untuk melihat apakah ada perbedaan kecepatan sama sekali.
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)