↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

不受支持的版本: 7.4 / 7.3 / 7.2 / 7.1 / 7.0 / 6.5 / 6.4
历史版本PostgreSQL 7.2 已于 2007 年 2 月结束社区维护,本页译文保留供仍在使用旧版本的读者参考。新系统请看当前版本手册首页。

pg_select

pg_select — 循环遍历 SELECT 语句的结果

大纲

pg_select dbHandle queryString arrayVar queryProcedure

输入

dbHandle

指定一个有效的数据库句柄。

queryString

指定一个有效的 SQL select 查询。

arrayVar

用于存放返回元组的数组变量。

queryProcedure

对找到的每个元组运行的过程。

输出

无。

描述

pg_select 向 PostgreSQL 后端提交一个 SELECT 查询, 并对结果中的每个元组执行一段给定的代码。 queryString 必须是一条 SELECT 语句。其他语句都会返回错误。 arrayVar 变量是循环中使用的数组名。对每个元组, arrayVar 都会以字段名 作为数组下标填入该元组的字段值。然后执行 queryProcedure。

除字段值外,数组中还会写入以下特殊条目:

.headers

SELECT 返回的列名列表。

.numcols

SELECT 返回的列数。

.tupno

当前元组编号,从零开始,循环体每迭代一次递增一次。

用法

如果表 table 有字段 control 和 name(或许还有其他字段),下面这样写即可:

    pg_select $pgconn "SELECT * FROM table" array {
                puts [format "%5d %s" $array(control) $array(name)]
        }

提交更正

译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。