In case you have your own slow SQL query, you can optimize it automatically here.
For the query above, the following recommendations will be helpful as part of the SQL tuning process.
You'll find 3 sections below:
CREATE INDEX crop_yield_idx_id_location ON "crop_yield" ("id_location");
CREATE INDEX culture_idx_id ON "culture" ("id");
CREATE INDEX location_idx_id ON "location" ("id");
CREATE INDEX microclimate_value_idx_id_culture ON "microclimate_value" ("id_culture");
SELECT
max(cy.value) AS yield,
EXTRACT(YEAR
FROM
cy.date) AS year
FROM
microclimate_value AS mv
JOIN
culture AS c
ON mv.id_culture = c.id
JOIN
location AS l
ON mv.id_location = l.id
JOIN
crop_yield AS cy
ON mv.id_location = cy.id_location
WHERE
c.id = :cultureId
AND l.id = :locationId
GROUP BY
year
ORDER BY
year