pg.ddx.io  pgsql-sql@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Ryan <pgsql-sql@seahat.com>
To: jasiek@klaster.net
Cc: pgsql-sql@postgresql.org
Subject: Re: column label
Date: Tue, 25 Mar 2003 08:50:28 -0600 (CST)
Message-ID: <10479.65.102.128.233.1048603828.squirrel@fordparts.com> (raw)
In-Reply-To: <3E7ED0E5.2060300@klaster.net>
References: <10814.65.102.128.233.1048280104.squirrel@fordparts.com>
	<3E7ED0E5.2060300@klaster.net>

> Uz.ytkownik Ryan napisa?:
>> Ok I have a query in a program that looks something like this
>>
>> select
>>  reference_number as foo,
>>  '(10,10)'::point <-> point(x,y) as distance
>> from imagemap
>>  where
>>   index_number = '2322' and
>>   block_number = '140'
>>  order by distance
>>  limit 1;
>>
>> I wanted to add a clause in where 'and distance < 30'
>> but according to the postgres manual it says I cannot do that for
>> WHERE or HAVING clauses, instead use the real name.
>>
>> However dropping the 'as distance' from my query gives me a column
>> name of '?column?' which happens to not be worth a dang thing.
>>
>> How can it be done?
>>
>> (I suddenly have a feeling its going to require a subselect)
> Your feeling is 50% accurate. If you want to use subselect, throw "<10"
> into this subselect, because you will have performance loss.
>
> You can also use whole function in where clause and order by:
>   select
>    reference_number as foo,
>    '(10,10)'::point <-> point(x,y) as distance
>   from imagemap
>    where
>     index_number = '2322' and
>     block_number = '140'
>    where '(10,10)'::point <-> point(x,y)<10
>    order by '(10,10)'::point <-> point(x,y)
>    limit 1;
>
> BTW Did you try to use polygons in your image maps, or you have rather
> point oriented web page than area oriented?
>
> Regards,
> Tomasz Myrta
Thats kind of a pain...  I'd rather perform the calculation once and then
do my order and where on the one value.  Is there any reason why postgres
does not recognize labels under WHERE?

The reason I use points is because my customized web-based image
mapping/ocr program can deal with points very aptly.  Also with a distance
based calc overlap is not really an issue as with polygons.  The reason I
am trying to limit the distance is simply to cut out clicking on far away
parts of the image.  Heck, I could check distance on the program side of
things but I try and keep as much in SQL as possible.

Ryan




view thread (4+ messages)  latest in thread

Message-ID: <10479.65.102.128.233.1048603828.squirrel@fordparts.com>
Permalink:  ../10479.65.102.128.233.1048603828.squirrel@fordparts.com/
Also on:    postgresql.org/message-id/10479.65.102.128.233.1048603828.squirrel@fordparts.com

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-sql@postgresql.org
  Cc: pgsql-sql@seahat.com, jasiek@klaster.net
  Subject: Re: column label
  In-Reply-To: <10479.65.102.128.233.1048603828.squirrel@fordparts.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox