Is it possible to reference a column alias in the WHERE clause?
I'd like to create a query something like this:
SELECT cust_id,
CASE WHEN TRIM(UPPER(cust_name)) LIKE TRIM(UPPER( 'Joe Jones' )) THEN '2'
--SAME NAME
WHEN TRIM(UPPER(alias)) LIKE TRIM(UPPER( '%Joe Jones%' )) THEN '1'
--EXISTING ALIAS
ELSE '0'
--NEW NAME
END AS name_test
FROM customer
WHERE cust_id = 1234
OR name_test > 0
ORDER BY name_test DESC
When I try it, I get: ERROR: Attribute "name_test" not found
If I remove name_test from the WHERE clause, the query still runs fine with name_test in the ORDER BY.
Is there a way to reference the alias in the Where clause as well? This is PostgreSQL 7.3.
Thanks,
August