From: | Scott Marlowe <smarlowe(at)g2switchworks(dot)com> |
---|---|
To: | mmiranda(at)americatel(dot)com(dot)sv |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: Most specific match using between |
Date: | 2005-04-21 16:11:22 |
Message-ID: | 1114099882.13303.30.camel@state.g2switchworks.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Thu, 2005-04-21 at 10:51, mmiranda(at)americatel(dot)com(dot)sv wrote:
> Hi people, is there a swtich or something to instruct a between statement
> hat it must perform a most specific match ?
> These are the details, i have these table
>
> name | start | end
> ---------------+---------------+-----------------
> general | 2660000 | 2669999
> specific | 2660124 | 2660124
> (2 rows)
>
>
> unsing the query: select name where '2660124' between start and end
>
> i got:
>
>
> name
> ---------
> general
> specific
>
>
> How can i get only specific?
Do you want the ONE row that's closest, or a set of rows that are fairly
close? Not sure what your specification it exactly, but how about:
select name where '2660124' between start and end order by abs
(start-end) limit 1;
From | Date | Subject | |
---|---|---|---|
Next Message | Janning Vygen | 2005-04-21 16:14:10 | User def. Functions for sysadmin tasks? |
Previous Message | Scott Marlowe | 2005-04-21 16:01:09 | Re: CURRENT_TIMESTAMP vs actual time |