윈 토토 — 커서를 사용하여 쿼리에서 행 검색
윈 토토 [방향] [ 보낸 사람 | 에 ]cursor_name어디에서방향다음 중 하나일 수 있습니다.다음 이전 첫 번째 마지막 절대개수상대개수개수모두 앞으로 앞으로개수모두 전달 뒤로 뒤로개수뒤로 모두
윈 토토이전에 생성된 커서를 사용하여 행을 검색합니다.
커서에는 다음에서 사용되는 관련 위치가 있습니다.윈 토토. 커서 위치는 쿼리 결과의 첫 번째 행 앞, 결과의 특정 행 또는 결과의 마지막 행 뒤일 수 있습니다. 생성되면 첫 번째 행 앞에 커서가 위치합니다. 일부 행을 가져온 후 커서는 가장 최근에 검색된 행에 위치합니다. 만일윈 토토사용 가능한 행의 끝에서 실행되고 커서는 마지막 행 뒤 또는 뒤로 가져오는 경우 첫 번째 행 앞에 위치하게 됩니다.모두 윈 토토또는모두 뒤로 윈 토토항상 마지막 행 뒤 또는 첫 번째 행 앞에 커서를 둡니다.
양식다음, 이전, 첫 번째, 마지막, 절대, 상대적커서를 적절하게 이동한 후 단일 행을 가져옵니다. 그러한 행이 없으면 빈 결과가 반환되고 커서는 적절하게 첫 번째 행 앞이나 마지막 행 뒤에 위치하게 됩니다.
다음을 사용하는 양식앞으로그리고뒤로커서를 마지막으로 반환된 행(또는 모든 행 뒤/앞에 있는 경우)에 두고 앞으로 또는 뒤로 이동하여 표시된 행 수를 검색합니다.개수사용 가능한 행 수를 초과했습니다.)
상대 0, 앞으로 0및뒤로 0모든 요청은 커서를 이동하지 않고 현재 행을 가져오는 것입니다. 즉, 가장 최근에 가져온 행을 다시 가져오는 것입니다. 커서가 첫 번째 행 앞이나 마지막 행 뒤에 위치하지 않는 한 성공합니다. 이 경우 행이 반환되지 않습니다.
이 페이지는 SQL 명령 수준에서 커서의 사용법을 설명합니다. a 내부에서 커서를 사용하려는 경우PL/pgSQL함수, 규칙이 다릅니다 — 참조섹션 43.7.3.
방향방향가져올 방향과 가져올 행 수를 정의합니다. 다음 중 하나일 수 있습니다.
다음다음 행을 가져옵니다. 다음의 경우 기본값입니다.방향생략되었습니다.
이전이전 행을 가져옵니다.
첫 번째쿼리의 첫 번째 행을 가져옵니다(동일절대 1).
마지막쿼리의 마지막 행을 가져옵니다(동일절대 -1).
절대개수윈 토토개수'쿼리의 번째 행 또는복근(끝에서 번째 행 if개수)개수음수입니다. 첫 번째 행 앞이나 마지막 행 뒤의 위치개수범위를 벗어났습니다. 특히,절대 0첫 번째 행 앞에 위치합니다.
상대적개수윈 토토개수'다음 행 또는복근('번째 이전 행 if개수)개수부정적입니다.상대 0현재 행이 있으면 다시 가져옵니다.
개수다음 윈 토토개수행(동일앞으로).개수
전체나머지 모든 행을 가져옵니다(동일모두 전달).
앞으로다음 행을 가져옵니다(동일다음).
앞으로개수다음 윈 토토개수행.앞으로 0현재 행을 다시 가져옵니다.
모두 전달나머지 행을 모두 가져옵니다.
뒤로이전 행을 가져옵니다(동일이전).
뒤로개수이전 항목 윈 토토개수행(뒤로 스캔).뒤로 0현재 행을 다시 가져옵니다.
뒤로 모두이전 행을 모두 가져옵니다(뒤로 스캔).
개수개수은(는) 부호 있는 정수 상수로, 가져올 행의 위치나 수를 결정합니다. 에 대한앞으로그리고뒤로cases, 부정 지정개수의 의미를 바꾸는 것과 같습니다앞으로그리고뒤로.
cursor_name열린 커서의 이름.
성공적으로 완료되면 a윈 토토명령은 다음 형식의 명령 태그를 반환합니다.
윈 토토개수
그개수은 가져온 행 수입니다(0일 수도 있음). 참고하세요psql, 명령 태그는 실제로 표시되지 않습니다. 왜냐하면psql대신 가져온 행을 표시합니다.
커서는 다음으로 선언되어야 합니다.스크롤변형을 사용하려는 경우 옵션윈 토토이외다음 윈 토토또는앞으로 윈 토토양수입니다. 간단한 문의사항의 경우포스트그레SQL다음으로 선언되지 않은 커서에서 역방향 윈 토토를 허용합니다스크롤, 하지만 이 동작은 의존하지 않는 것이 가장 좋습니다. 커서가로 선언된 경우스크롤 없음, 역방향 윈 토토는 허용되지 않습니다.
절대윈 토토는 상대 이동을 통해 원하는 행으로 이동하는 것보다 빠르지 않습니다. 어쨌든 기본 구현은 모든 중간 행을 순회해야 합니다. 음수 절대 윈 토토는 훨씬 더 나쁩니다. 마지막 행을 찾으려면 쿼리를 끝까지 읽어야 하고 거기서부터 뒤로 순회해야 합니다. 그러나 쿼리 시작 부분으로 되감기(다음과 같이)절대값 윈 토토 0)는 빠릅니다.
다음 예는 커서를 사용하여 테이블을 탐색합니다:
작업 시작; -- 커서를 설정합니다: 리아호나 선택을 위한 스크롤 커서 선언 * 영화에서; -- 커서 liahona의 처음 5개 행을 가져옵니다. 리아호나에서 5개를 앞으로 가져오세요. 코드 | 제목 | 그랬어 | 날짜_생산 | 종류 | 렌 -------+------------+------+------------+------------+------- BL101 | 세 번째 남자 | 101 | 1949-12-23 | 드라마 | 01:44 BL102 | 아프리카 여왕 | 101 | 1951-08-11 | 로맨틱 | 01:43 JL201 | Une Femme est une Femme | 102 | 1961-03-12 | 로맨틱 | 01:25 P_301 | 현기증 | 103 | 1958-11-14 | 액션 | 02:08 P_302 | 베켓 | 103 | 1964-02-03 | 드라마 | 02:28 -- 이전 행을 가져옵니다. 리아호나보다 먼저 가져오십시오. 코드 | 제목 | 그랬어 | 날짜_생산 | 종류 | 렌 ------+---------+------+------------+---------+------- P_301 | 현기증 | 103 | 1958-11-14 | 액션 | 02:08 -- 커서를 닫고 트랜잭션을 종료합니다. 닫기 리아호나; 작업 커밋;
SQL 표준이 정의함윈 토토Embedded SQL에서만 사용됩니다. 의 변형윈 토토여기에 설명된 내용은 마치 데이터를 반환합니다.선택결과를 호스트 변수에 넣지 않고 반환합니다. 이 점 외에는,윈 토토SQL 표준과 완전히 상위 호환됩니다.
그윈 토토관련 양식앞으로그리고뒤로및 양식윈 토토그리고개수모두 윈 토토, 거기에앞으로암시적입니다.윈 토토확장.
SQL 표준에서는 다음만 허용합니다.발신커서 이름 앞에; 사용할 옵션IN또는 모두 제외하는 것은 확장입니다.
문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 경험이 있거나 추가 설명이 필요한 경우 이용해주세요이 양식문서 문제를 보고합니다.