J'ai une requête comme celle-ci :
SELECT
jobs.*,
(
CASE
WHEN lead_informations.state IS NOT NULL THEN lead_informations.state
ELSE 'NEW'
END
) AS lead_state
FROM
jobs
LEFT JOIN lead_informations ON
lead_informations.job_id = jobs.id
AND
lead_informations.mechanic_id = 3
WHERE
lead_state = 'NEW'
Ce qui donne l'erreur suivante :
PGError: ERROR: column "lead_state" does not exist
LINE 1: ...s.id AND lead_informations.mechanic_id = 3 WHERE (lead_state...
Dans MySql, cela est valide, mais apparemment pas dans Postgresql. D'après ce que je peux recueillir, la raison est que la partie SELECT
de la requête est évaluée plus tard que la partie WHERE
. Y a-t-il une solution commune à ce problème ?