Re: Working with pages of data (LIMIT/OFFSET keyword)

From: AI Rumman <rummandba(at)gmail(dot)com>
To: francisco(at)npgsql(dot)org
Cc: Szymon Guz <mabewlun(at)gmail(dot)com>, Mike Christensen <mike(at)kitchenpc(dot)com>, "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org>
Subject: Re: Working with pages of data (LIMIT/OFFSET keyword)
Date: 2010-06-20 04:51:14
Message-ID: AANLkTinhUay4MCUa_palms2tZ8OxHu5Yj_pVSEOYlte2@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

I am using a PHP client. Is there a way to do the above task with php?

On Thu, Jun 17, 2010 at 11:38 PM, Francisco Figueiredo Jr. <
francisco(at)npgsql(dot)org> wrote:

> I would go with 2).
>
> Npgsql supports multiple resultsets. You can pass a query separated by
> semicolon ';' or you can use a procedure call which return a setof
> refcursor.
>
> On both ways, you will need to call NextResult in your Datareader just
> like with SQLServer.
>
> You can check our user manual: http://manual.npgsql.org to get more
> info about how to use refcursors
>
> I hope it helps.
>
> Please, let me know if you need more info.
>
>
>
> On Wed, Jun 16, 2010 at 16:44, Szymon Guz <mabewlun(at)gmail(dot)com> wrote:
> >
> >
> > 2010/6/16 Mike Christensen <mike(at)kitchenpc(dot)com>
> >>
> >> I'm generating a query on the fly to return a set of data, however I
> >> only want to display 30 rows at a time to the user. For this reason,
> >> I use the LIMIT 30 OFFSET x clause on the select statement. However,
> >> I also want to know the total rows that match this query had there
> >> been no limit, that way I can display to the user the total count and
> >> the number of pages, and have Next/Prev buttons in my UI. I can think
> >> of the following ways to do this:
> >>
> >> 1) When the page loads, execute two totally separate queries. One
> >> that does the COUNT, and then another query immediately after to get
> >> the desired page of data. I don't like this as much because the two
> >> queries will execute in separate transactions and it'd be nice if I
> >> could just perform a single SQL query and get all this information at
> >> once. However, I will use this if there's no other way.
> >>
> >
> > Just run them in one transaction.
> > You can also just show the Next/Prev buttons and then do something just
> for
> > the case where there is no data.
> > Or use LIMIT 31 so you always know that there is the next page with at
> least
> > one record.
> > regards
> > Szymon Guz
>
>
>
> --
> Regards,
>
> Francisco Figueiredo Jr.
> Npgsql Lead Developer
> http://www.npgsql.org
> http://fxjr.blogspot.com
> http://twitter.com/franciscojunior
>
> --
> Sent via pgsql-general mailing list (pgsql-general(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general
>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message David Goodenough 2010-06-20 09:08:34 Re: A thought about other open source projects
Previous Message Peter Eisentraut 2010-06-20 01:29:09 Re: A thought about other open source projects