Mark Kirkwood <markir@xxxxxxxxxxxxxxx> writes: > SELECT ... FROM table WHERE ... ORDER BY id LIMIT 20; > Suppose this displays records for id 10000 -> 10020. > When the user hits next, and page saves id=10020 in the session state > and executes: > SELECT ... FROM table WHERE ... AND id > 10020 ORDER BY id LIMIT 20; > Clearly you have to be a little careful about whether to use '>' or '>=' > depending on whether 'id' is unique or not (to continue using '>' in the > non unique case, you can just save and use all the members of the > primary key too). This is actually fairly painful to get right for a multi-column key at the moment. It'll be much easier once I finish up the SQL-spec-row-comparison project. See this thread for background: http://archives.postgresql.org/pgsql-performance/2004-07/msg00188.php regards, tom lane