Hi I am trying to optimize my SQL query and taking help to check SQL plan of my query from explain.depesz. Here is link https://explain.depesz.com/s/4MiM for my query plan. I don't have enough knowledge about query plan. So can some tell me what should I do in my query to optimize my postgres SQL query.
here is my query.
SELECT
ap.id,
ap.invoice_generated,
ap.external_order_id,
ap.appointment_status,
ap.invoice_generation_time,
ap.prior_authorization_code,
ap.fee_details AS appt_fee_details,
r.id AS ride_id,
r.external_leg_id,
r.leg_no,
r.ride_status,
r.ride_category,
vld.fuse_id,
org.fee_details,
org.fee_details,
rad.mode,
r.distance,
st.setting_value AS allow_ride_cost_zero
FROM
ride_details r
INNER JOIN appointments ap ON r.appt_id = ap.id
INNER JOIN ride_additional_details rad ON rad.ride_detail_id = r.id
INNER JOIN organisations org ON ap.org_id = org.id
INNER JOIN vendor_lists vl ON vl.ride_id = r.id
AND vl.status = 'active'
LEFT JOIN settings st ON st.owner_id = org.market_segment_id
AND st.owner_type = 'market_segment'
AND st.setting_name = 'allow_ride_cost_zero'
INNER JOIN vendor_list_details vld ON vld.ride_id = r.id
AND vld.vendor_list_id = vl.id
AND vld.status IS NOT NULL
WHERE
ap.external_order_id IS NOT NULL
AND ap.invoice_generated = FALSE;