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.