This documentation is for an unsupported version of PostgreSQL.
You may want to view the same page for the
current
version, or one of the other supported versions listed above instead.
MOVE
Name
MOVE -- position a cursor on a specified
row of a table
Synopsis
MOVE [ direction ] [ count ]
{ IN | FROM } cursor
Description
MOVE allows a user to move cursor
position a specified number of rows. MOVE
works like the FETCH command, but only
positions the cursor and does not return rows.
Refer to FETCH for
details on syntax and usage.
Notes
MOVE is a PostgreSQL language extension.
Refer to FETCH for a
description of valid arguments. Refer to DECLARE to define a cursor. Refer to
BEGIN, COMMIT, and ROLLBACK for further information about
transactions.
Usage
Set up and use a cursor:
BEGIN WORK;
DECLARE liahona CURSOR FOR SELECT * FROM films;
-- Skip first 5 rows:
MOVE FORWARD 5 IN liahona;
MOVE
-- Fetch 6th row in the cursor liahona:
FETCH 1 IN liahona;
FETCH
code | title | did | date_prod | kind | len
-------+--------+-----+-----------+--------+-------
P_303 | 48 Hrs | 103 | 1982-10-22| Action | 01:37
(1 row)
-- close the cursor liahona and commit work:
CLOSE liahona;
COMMIT WORK;
Compatibility
SQL92
There is no SQL92
MOVE statement. Instead, SQL92 allows one to FETCH rows from an absolute cursor position,
implicitly moving the cursor to the correct position.