MOVE
MOVE
커서(cursor)의 위치를 이동시키는 명령이에요. FETCH와 완전히 똑같이 동작하지만, 어떤 데이터도 검색하지 않고 커서의 위치만 옮기는 것이 차이예요. FETCH와 동일한 방향·개수 문법을 쓰지만 행을 반환하지 않아요.
출처: PostgreSQL 문서
본문
개요 (Synopsis)
MOVE [ direction ] [ FROM | IN ] cursor_name
where direction can be one of:
NEXT
PRIOR
FIRST
LAST
ABSOLUTE count
RELATIVE count
count
ALL
FORWARD
FORWARD count
FORWARD ALL
BACKWARD
BACKWARD count
BACKWARD ALL
설명 (Description)
MOVE는 어떤 데이터도 검색하지 않고 커서를 재배치해요. MOVE는 FETCH 명령과 정확히 똑같이 동작하지만, 커서의 위치만 옮기고 행을 반환하지 않아요.
MOVE 명령의 파라미터는 FETCH 명령의 파라미터와 동일해요. 문법과 사용에 대한 자세한 내용은 FETCH를 참고하세요.
출력 (Outputs)
성공적으로 완료되면 MOVE 명령은 다음 형태의 명령 태그를 반환해요.
MOVE count
count는 같은 파라미터를 가진 FETCH 명령이 반환했을 행 수예요(아마 0일 수 있어요).
예제 (Examples)
BEGIN WORK;
DECLARE liahona CURSOR FOR SELECT * FROM films;
-- Skip the first 5 rows:
MOVE FORWARD 5 IN liahona;
MOVE 5
-- Fetch the 6th row from the cursor liahona:
FETCH 1 FROM liahona;
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 end the transaction:
CLOSE liahona;
COMMIT WORK;
호환성 (Compatibility)
SQL 표준에는 MOVE 명령문이 없어요.
더 알아보기 (Learn more)
커서를 정의하는 방법은 DECLARE 문서를, 데이터를 검색하면서 커서를 움직이는 방법은 FETCH 문서를 함께 보면 좋아요.