Re: How do you select from a table until a condition is met?

From: Nicholas Allen <nallen(at)freenet(dot)co(dot)uk>
To: Dmitry Tkach <dmitry(at)openratings(dot)com>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: How do you select from a table until a condition is met?
Date: 2003-02-12 19:10:15
Message-ID: 200302122010.15297.nallen@freenet.co.uk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql


Thanks, but I don't think thats what I want. Basically I need to get the row
offset of a record (ie row) in a result set returned from the database. I
know all the details of the row in question but when the search order changes
I need to know the new index the row will have.

In other words, I was hoping I would be able to select upto a particular row
(not knowing its offset but knowing everything else about it) in a select
query.

Ideally I could do something like SELECT count(*) UNTIL col1=value1 &&
col2=val2 etc....

Of course there is no UNTIL in a select statement just a WHERE clause.

I know I didn't explain that very well!

Well I hope you can still help?
On Wednesday 12 Feb 2003 9:39 pm, Dmitry Tkach wrote:
> select * from table order by x limit 10; -- get first 10
> select * from table order by x offset 10 limit 10; -- get 10 - 20
> select * from table order by x offset 40 limit 10; -- get 40-50
>
> OR
>
> begin;
> declare mycursor cursor for select * from table order by x;
> fetch 10 from mycursor; -- get first 10
> fetch 10 from mycursor; -- get 10-20
> move 20 in mycursor;
> fetch 10 from mycursor; -- get 40-50
>
>
>
> Is that what you are talking about?
>
> Dima
>
> Nicholas Allen wrote:
> > Hi,
> >
> > I am hoping that someone can help me with a problem I have. I would like
> > to= be=20
> > able to perform a SELECT query to select values from a table upto a
> > certain= =20
> > row. The select may be ordered on a number of items. Is it possible to
> > do= =20
> > this and how should I do it?
> >
> > The reason I need this is because I have created a virtual table browser
> > cl= ass=20
> > that performs SQL queries to get the sections of the table the user is=20
> > interested in. This way I don't load the whole table onto the client
> > side. = If=20
> > the user changes the sort ordering I want to determine the row index that
> > w= as=20
> > previously selected and scroll to that location.
> >
> > Any help would be very much appreciated.
> >
> > Thanks in advance,
> >
> > Nicholas Allen
> >
> > ---------------------------(end of broadcast)---------------------------
> > TIP 3: if posting/reading through Usenet, please send an appropriate
> > subscribe-nomail command to majordomo(at)postgresql(dot)org so that your
> > message can get through to the mailing list cleanly

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Bruno Wolff III 2003-02-12 19:35:38 Re: How do you select from a table until a condition is met?
Previous Message Nicholas Allen 2003-02-12 18:10:38 How do you select from a table until a condition is met?