FETCH

从游标检索行的 SQL 命令

FETCH 是一个用于从先前定义的游标中检索行的实用程序命令。

FETCH 一直存在于 PostgreSQL 中。

不要将 FETCH 游标命令与 PostgreSQL 13 中添加的 SELECT 语句的 FETCH { FIRST | NEXT } [ n ] { ROW | ROWS } 语法混淆。

更改历史记录

开发中

FETCH 存在于每个 PostgreSQL 版本中。

示例

FETCH 的基本用法示例

postgres=# BEGIN ;
BEGIN

postgres=*# DECLARE foo_cursor CURSOR
                FOR SELECT * FROM foo;
DECLARE CURSOR

postgres=*# FETCH 1 FROM foo_cursor;
 id |             val              
----+------------------------------
  1 | 2022-10-25 08:21:20.67438+01
(1 row)

尝试从不存在的游标中检索行

postgres=*# CLOSE foo_cursor ;
CLOSE CURSOR

postgres=*# FETCH 1 FROM foo_cursor;
ERROR:  cursor "foo_cursor" does not exist
  • PostgreSQL 文档: FETCH

分类

游标SQL 命令

另请参阅

CLOSEDECLAREMOVEcursor_tuple_fractionpg_cursors

反馈

提交任何关于 "FETCH" 的评论、建议或更正 此处