| From: | August Detlefsen <augustd(at)energiesonline(dot)com> |
|---|---|
| To: | pgsql-sql(at)postgresql(dot)org |
| Subject: | Using column alias in WHERE clause? |
| Date: | 2003-03-07 19:17:16 |
| Message-ID: | 16609031.1047064636464.JavaMail.root@homer.codemagi.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-sql |
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
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Achilleus Mantzios | 2003-03-07 20:14:39 | Hex Integer Input |
| Previous Message | Tom Lane | 2003-03-07 18:31:47 | Re: problem with subselect |