On Mon, Oct 26, 2009 at 10:30 AM, silly8888 <silly8888(at)gmail(dot)com> wrote:
> Suppose that you have a query, say $sql_query, which is very
> complicated and produces many rows. Which of the following is going to
> be faser:
>
> $sql_query OFFSET 3000 LIMIT 12;
>
> or
>
> BEGIN;
> DECLARE cur1 CURSOR FOR $sql_query;
> MOVE 3000 IN cur1;
> FETCH 12 FROM cur1;
> COMMIT;
>
> Naturally, the former cannot be slower than the latter. So my question
> essentially is whether the MOVE operation on a cursor is
> (significantly) slower that a OFFSET on the SELECT.
>
OFFSET/LIMIT. Afaik cursor always fetches everything.
--
GJ