Can this query be optimized any further?
SELECT
s.event_id as "id",
s.event_start as "start",
p.treatment_id as "treatment_id",
s.status_id as "status_id"
FROM
SCHEDULEREVENT s
LEFT JOIN PATIENT_HAS_EVENT p ON p.event_id = s.event_id
WHERE
p.patient_id = 50
p.event_id is a Primary Key. There is an index on p.patient_id
Execution is taking around a second which is far too long for my needs.
EDIT:
The best solution was to do this query backwards with changing LEFT JOIN
to JOIN
.
SELECT
s.event_id as "id",
s.event_start as "start",
p.treatment_id as "treatment_id",
s.status_id as "status_id"
FROM
PATIENT_HAS_EVENT p
JOIN SCHEDULEREVENT s ON s.event_id = p.event_id
WHERE
p.patient_id = 50
Average execution time has been brought down from 912 ms to 10.69 ms