On Thu, 27 Mar 2003, Bruno Wolff III wrote:
> On Wed, Mar 26, 2003 at 18:29:42 -0600,
> Tad Marko <tad@tadland.net> wrote:
> > Bruno,
> >
> > I aplogize for bothering you direclty, but I'm having some difficulty with
> > some syntax using the earth distance functions. Every single example I can
> > find is using hard coded constants for the latitude and longitude, but I'm
> > trying to use a join to get these values. Basically, what I'm trying to do
> > is:
> >
> > select up.first_name, up.last_name, up.city, zip_code from user_primary as
> > up, ziplocs as zl where zl.zip=up.zip_code::integer and '(33.0, 97.1)'::point
> > <@> '(zl.lat, zl.lon)'::point < 50;
> >
> > But this fails with a
> >
> > ERROR: Bad point external representation '(zl.lat, zl.lon)'
> >
> > message. I simply cannot figure out how to specify the lat and lon values
> > from the joined table. Can you offer any suggestions?
That'd attempt to make a point from the string literal given, not what you
want. I think point(zl.lat, zl.lon) might work (there's a point function
that takes two doubles and returns a point).