From: | "Alexander Ilyin" <a_ilyin(at)ukr(dot)net> |
---|---|
To: | "Bruno Wolff III" <bruno(at)wolff(dot)to> |
Cc: | pgsql-sql(at)postgresql(dot)org |
Subject: | Re: How to FindNearest |
Date: | 2006-10-03 11:43:40 |
Message-ID: | E1GUigW-000K1a-7F@kitty.ukr.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
-----Original Message-----
From: Bruno Wolff III <bruno(at)wolff(dot)to>
To: Alexander Ilyin <a_ilyin(at)ukr(dot)net>
Date: Mon, 2 Oct 2006 19:20:49 -0500
Subject: Re: How to FindNearest
> On Sat, Sep 30, 2006 at 11:43:40 +0300,
> Alexander Ilyin <a_ilyin(at)ukr(dot)net> wrote:
> >
> > Suppose we have huge table. On the screen we need to show contents of that table in the Grid and under that Grid user can input in TextBox some letters. OnChange of this TextBox we need to make current row selection in the Grid on the row with value of some column nearest to the user input in the TextBox.
> >
> > How this can be implemented in PostgreSQL?
>
> You can search for the row with the closest above and the row with the
> closest below and then return whichever these is closer. (Remember to handle
> the case where the target is larger or smaller than all values in the
> database.) You can use ORDER BY and LIMIT 1 and an appropiiate WHERE
> clause (something like columnname >= targetvalue) to do this.
>
>
Thank you for your great idea. But how it can be used for positioning the cursor in the already existed ResultSet? Using your idea I can found the closest to targetvalue row but not its position in my ResultSet.
Anyway thank you for your idea it is very useful by itself. Also I can solve my problem using your idea and emulating the movement in my existed ResultSet. Even better - no need to store the large RS between cursor movements. Just each time I need to fetch the all visible rows.
From | Date | Subject | |
---|---|---|---|
Next Message | Daryl Richter | 2006-10-03 11:49:37 | Re: i have table |
Previous Message | Achilleas Mantzios | 2006-10-03 11:00:35 | Re: i have table |