Re: Counting records in a PL/pgsql cursor - Mailing list pgsql-general

From Richard Huxton
Subject Re: Counting records in a PL/pgsql cursor
Date
Msg-id 454B1CD1.3060901@archonet.com
Whole thread Raw
In response to Counting records in a PL/pgsql cursor  ("Magnus Hagander" <mha@sollentuna.net>)
List pgsql-general
Magnus Hagander wrote:
> Is there any way to count how many hits I got in a cursor in PL/pgsql?
>
> I have a function that will "window" through the result of a (large)
> query based on two parameters, but I also want to return the number of
> hits to the client. Right now I'm looping through the entire cursor and
> incrementing a local variable, which I later return (along with the
> first <n> records in the resultset) to the client. But this seems
> horribly inefficient... I'd just like to ask "how many rows are in this
> cursor", is there a way to do that without looping through them all?

Not really - that's the point of a cursor, after all. If possible, the
planner should give you the first row before it has all of them, so it
might not even know.

--
   Richard Huxton
   Archonet Ltd

pgsql-general by date:

Previous
From: Martijn van Oosterhout
Date:
Subject: Re: start up and shut down script
Next
From: Martijn van Oosterhout
Date:
Subject: Re: Counting records in a PL/pgsql cursor