I have this query in PostgreSQL:
SELECT cars.*,
manufacturers.company_name AS manufacturer_company_name,
companies.mailing_name AS company_mailing_name,
(SELECT car_documents.file_url FROM car_documents
WHERE car_documents.car_id = cars.id AND car_documents.document_type = 1 LIMIT 1) AS ins_file_url,
(SELECT car_documents.file_url FROM car_documents
WHERE car_documents.car_id = cars.id AND car_documents.document_type = 3 LIMIT 1) AS guar_file_url,
FROM "cars"
INNER JOIN "companies" ON "companies"."id" = "cars"."company_id"
LEFT JOIN shippers ON shippers.id = cars.shipper_id
WHERE (cars.status IS NULL
AND cars.delivered < '2021-01-14'
AND ins_file_url IS NOT NULL)
Why cannot I use the alias column ins_file_url
in the WHERE
clause? Is there any workaround for this behavior?
Thank you in advance