From: | Bryce Nesbitt <bryce1(at)obviously(dot)com> |
---|---|
To: | pgsql-sql(at)postgresql(dot)org |
Subject: | Re: Can function results be used in WHERE? |
Date: | 2006-07-11 00:24:28 |
Message-ID: | 44B2EFBC.1090201@obviously.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Aaron Bono wrote:
>
>
> On 7/10/06, *Bryce Nesbitt* <bryce1(at)obviously(dot)com
> <mailto:bryce1(at)obviously(dot)com>> wrote:
>
>
> I think it is ugly also, but no other syntax seems to work:
>
> stage=# select
> pod_code,lat,lon,calculate_distance(lat,lon,37.789629,-122.422082) as
> dist from eg_pod where dist < 1 order by dist desc limit 10;
> ERROR: column "dist" does not exist
>
>
> SELECT
> pod_code,
> lat,
> lon,
> calculate_distance(lat,lon,37.789629,-122.422082) as dist
> FROM eg_pod
> WHERE calculate_distance(lat,lon, 37.789629,-122.422082) < 1
> ORDER BY calculate_distance(lat,lon,37.789629,-122.422082) desc limit 10;
Yep, that works. I guess with IMMUTABLE it's even effecient.
But I have to pass 6 arguments, not 2. Is there a way to make it look
cleaner?
I had expected using the column label (e.g. "dist") to work with WHERE,
just as it does with ORDER BY.
-Bryce
--
----
Visit http://www.obviously.com/
From | Date | Subject | |
---|---|---|---|
Next Message | Phillip Smith | 2006-07-11 00:30:21 | Re: Select Maths |
Previous Message | Chris Browne | 2006-07-11 00:12:51 | Re: MS-SQL<->Postgres sync |